Welcome to a modern OS...
So Linux to some people is a major thing, to me it is, I plan to make a career out of using it and knowing things is required.
I have been a semi-active member in this section for around 18 months and I feel I have gathered enough information to guide new users on how to get the best start in Linux.
But this does not mean I will tell you what distro to use because I simply cannot, I personally am a person who loves Arch Linux as I get on with the system best, you may get on with Fedora or Ubuntu but anyways I digress lets get into the subject.
Part 1 - What is Linux?
Linux is a kernel, not an operating system, just like NT is a kernel for Windows and Darwin is the kernel for OSX.
The kernel is the piece of software that talks between the hardware and the operating system, if the system requests more power, the kernel will tell the hardware more power from said component, it will also tell the system if the user needs audio, USB, network etc.
The kernel on Linux is a bit more sophisticated than Windows NT kernel, we have different technologies under the hood from security to performance.
One technology is SELinux, this is tool that can stop specific types of attacks from been executed as it controls RAMs read/write accesses, a bit complicated for the new user but you will learn this sort of stuff during your time here.
Another tool we have is no-reboot patching this is becoming official in Linux 4.0, this allows the system to be patched and not rebooted but it still applies it, something that cannot be done in Windows (Yet...)
But all this would not be possible without the development system of Linux, by using cross collaboration world wide we would not have half of these technologies, as companies share their advancements to benefit others and their own needs.
All this was created by a Helsinki programmer named Linus Torvalds.
So how do we interact with Linux if its not an operating system?
We use something called distros, these are built on top of Linux by different communities, the advantage of this system compared to say Windows is the community can select what they want to be included in their distro and make it mission specific, examples of this follow.
Red Hat Enterprise Linux - Super stable for Workstations and Enterprise servers.
Debian - Extremely stable for servers.
Fedora - A test bed for brand new technologies.
Ubuntu - A new linux user distro aimed at simplicity.
Arch Linux - Aimed at keeping things simple and giving the user all the power.
Gentoo - for them times you need something super specific.
So you can make the distro fit you and your workflow compared to you having to fit the operating system, this is called freedom in the I.T world.
All this power comes with the cost of some knowledge but learning to fix things in Linux applies to learning how things work in other systems, Thanks to Linux I better understand how graphics cards work and how to fix issues in Windows.
Linux will expose you to the hard stuff if you let it, this is a good think because you become a better user for it, learning the system allows you to maintain and take better care of it without relying on patch Tuesday.
Driver support is also a lot bigger in Linux, the only drivers we generally have issues with are Graphics cards and Wifi but this is becoming less of a problem with each kernel release which is around ever 3 months.
But to get us going there is a set of open source drivers which are built automatically into Linux to provide a easier ride for new users.
This is how we have such an easy time with drivers, we have two sections which are Open Source and Proprietary.
Also ignore the stallmanites (people who believe only free open source software is the right way) this is absolute crap if you need that proprietary driver from someone go get it, save your self a head ache.
But with all this code open to the public, Linux would be easier to exploit no?
Not at all, the system is designed around user spaces which increases security on its own, as you cannot access another user space and is recommended for code to be entered here by Linus him self.
Reason for this is the user space is in a way sandboxed so nothing can get out, if there is a problem on that user it would spill to another user making life simple for admins.
We also have SELinux (Built by the NSA!!) NFTables (Advanced Firewalls) and a true package management system which allows us to pull applications down from the internet in a safe way, this is achieved by using pgp keys or authorized repos.
These keys are cross checked every time you download from that server, this ensures the file is legitimate and safe to download.
With these basic features as well as Linux requiring a password on every account makes it secure by default, no need for Anti-virus systems.
You say package managers?
This is one way to get programs onto our system using the terminal, let me first explain the terminal.
The terminal is one of the most powerful tools in existence for computing, this is not the short version in Windows, this terminal allows full system changes on the fly, package downloads, kernel swapping, system rebuilding, graphics stack editing (Search X server) and many more things, this is a tool built into the heart of Linux and should be used, the power you experience is something else.
But package managers are an extension of the terminal a few examples are as follows.
Aptitude (Apt-get) used by Debian based systems. - Binary
RPM (Red Hat Package Manager) used by systems based on RHEL and SuSE as well as others. - Binary
Pacman is based on Arch Linux. - Binary
Source is on every system and allows you to build the packages from source to compile to your specific needs, this is a bit more advanced.
These are how you get packages for your system and how you update, it is important to learn them all if you wish to become a sysadmin.
Again package management improves security by using pgp keys.
And finally gaming.
This is a big topic in Linux and it is hit and miss.
Steam is pushing for AAA titles to appear here and doing a good job, but we are far from Windows levels, we do have a tool called Wine (Wine is not an emulator, its a translation system) which uses Windows APIs (Which do not change to often) but its hit and miss, Steam is the best bet but it can compromise security a bit.
I personally use Steam on Linux but I keep a close eye on it as its store is a old version of Firefox, never run this as root...
If you wish to request information about a specific item please ask for it, and do not be afraid to ask questions we are here to help you get the best start in your Linux life.