I decided to translate this post from my other blog, since it really was a success. When I wrote it, I didn't expect it to be so viewed and shared. I did it for fun. Just like this blog. Just like the other. As you can see, I don't have ads on this or the other site. What I do, I do for fun. Of course, if it were to win some extra cash from these two sites, maybe I'd write more intersting stuff, but I'd do it still for me and for sharing's sake. Because sharing is caring.
(There are some sencences that were reformulated, but the original idea is not lost. It's very hard to translate with exact words.)
What is Linux?
This questions has three answers and each of them is more correct than the other.
- You think about Linux as an operating system (OS). GNU/Linux OS contains Torvalds' kernel (Linux) and a suite of GNU applications. The suite is mostly formed by a compiler and a diversity of tools which help you control (command) the computer. I'm talking about the programs you use to create/move/copy/delete files, manipulate text files, etc.
- Linux is a kernel. Alone, the word "Linux" can mean the OS' kernel, but many people use the word Linux and are referring to a certain Linux distribution.
In the first paragraph we talked about GNU/Linux. I'm giving you another example: GNU/Hurd. GNU/Hurd is another OS, and it runs Hurd kernel. The only difference between GNU/Linux and GNU/Hurd that you should know right now, is that GNU is the set of applications running on Linux or Hurd kernel. The kernel is the one which links userspace and hardware. If the user creates a file on the HDD, the
touchapplication tells(commads) the kernel that the user wants a new file to be created and the kernel writes the file on the disk.
- Linux is a distribution. It's not very correct to say that, but it's acceptable. Almost every distro has the word "Linux" in its description so it's OK-ish.
What is a Linux distro?
A Linux distribution is an OS.
OK. What is exactly a Linux distro?
It's an OS, like Windows or MacOS. It's roughly the GNU application suite and the Linux kernel, packed together, so that the user can use them immediately after installing the distro on his computer. It's the kernel + userspace, where the userspace differs from distro to distro.
I didn't understand all of that, but OK... Now tell me why are there so many distros. What is different about them?
That is a good and pertinent question. There are a lot of distros "because we can"™.
What is different about them? Nothing and everything.
They are all Linux distros. All of them use GNU application set and Linux kernel. Maybe the kernel version is different from distro to distro, the package manager, the userspace, the interface, and the reason they were made, but under the hood all run Linux kernel. When I say "reason" I refer to the targeted users for which they were created. There are penetraton testing distros, router distros, server distros, media center distros, and we can say that soon we will have a gaming distro. (SteamOS)
Can you tell me more differences?
It's a lot to explain... Let's take Debian for example. It has some repositories designated for a specific group of people. Debian Stable repos are designed more for servers than everyday experienced users. By default, Debian Stable come with this repos, repos which are populated with stable packets (apps) that were tested rigurously against vulnerabilities. The apps here are stable, there are a few or no bugs, updates are slow, etc.
On the other hand, Debian Tesing has newer packages, which are being tested, or packages that have new features that need testing and cannot be installed on a server because of a potential security risk.
Ubuntu is based on Debian Tesing, with Ubuntu flavours added on some packages.
Repo and package manager(s)?
The repo is like a "market" for applications that run under Linux. A repository is something that is specific for every distro, more or less because of the packaging mode. If in Windows you have
msi for installing a program, in Linux you have
xz, and each of these files are recognised by a different package manager.
So I can't install a
pkg with a package manager that only recognises
Exactly. But don't worry. There is a big change you can find your needed application in your distro repo and install it with a simple command.
How do I install
You don't. This are archives with the source code for your desired program. Why don't you search in your distro repos for your program? I'm pretty sure you will find it. Or if you want to go the hard way, unarchive the source, compile the program, install it.
If a distro is designed only for servers, can I use it only on servers? Or if I install a media center distro on my computer, can I use it for something else?
Two questions, and they point to the same idea. The answer is: you can do whatever you want with them. Of course you won't install a server distro for building a MC, unless you don't need an interface. Raspbian, the distro that runs this site, came with an interface (Lxde desktop enviroment). I got rid of the desktop enviroment since I don't need it.
The interface. It's like using XP and switching between Windows 7 interface and Windows 8 Metro UI, but under the hood you still run XP. ( XP and W7 are the best Windows versions, IMHO)
How many DEs exist? Can you install any DE on a distro?
There are roughly 3-4 well known and used DEs in user-friendly distros: Gnome, KDE, Xfce, Lxde, Unity (Ubuntu exclusive). They can be installed on any distro, except Unity. (It doesn't work so well in other distros).
It's enough for today. I decided that I'll do this in two or three parts. I've slept only 5 hours last night, had an exam today, and I'm feeling a little tired.
For a little teasing, in the next part we'll talk more about Linux vs Windows, viruses, WINE and something about the command line interface (CLI).
Until the next post, stay classy Internet!