Which Linux distribution should I use?

Action disabled: source

This is an old revision of the document!


Which Linux distribution should I use?

Which Linux is best depends on what you need. Every Linux distribution uses the Linux kernel, because of which fact all distributions are bundled under the name of “Linux”. They all have the same software available. The main differences in increasing order of importance (least to most important) are:

  • which software they install as “standard” (easy to change)
  • which software they make available through their software channels (harder to change)
  • which features they configure install as “standard” (can be hard to change)
  • the package manager used for adding and removing software (very hard to change)

The package managers tend to be very different since they address different needs and target a different audience.

If you are an IT worker, like me, you may find it beneficial to have several distributions on your computer that you can choose at boot time.

Gentoo

Gentoo is the most technically advanced Linux because its package manager builds software from source code that is optimised to the hardware and according to your desired features.

Nobody tells you what you should include with Gentoo. You do it all yourself. When you are finished your desktop or server is the fastest (most lean and optimised) and most up-to-date that it can possibly be.

Gentoo is my favourite, the one I use every day and am using right now, but it is the hardest to learn and to maintain. Once you are an expert you can install a new server (without graphical desktop) from scratch in a day or a new desktop computer in two, mainly because it takes a long time to build everything from source code. If you are building multiple machines you can just build one finished machine and easily replicate it by just plugging hard disks into USB adaptors and using basic/simple tools like rsync or dd.

Sadly, I have seen rude behaviour in Gentoo help forums that I do not see in other distibutions' forums that I attribute to a superiority complex. These rude people are a minority, but I think they negatively impact Gentoo's acceptance by newcomers. Therefore, I have accepted that to use Gentoo means you either need a be prepared to suffer such treatment or else limit yourself to reading other people's questions and, if you can't find anyone else asking what you need to know, then just figure it out yourself.

Linux Mint, Ubuntu, etc.

Linux Mint and other variations of Ubuntu's flavour of the Debian distribution are among the easiest to get running. The installation is attractive and clear (at least in English), giving a good first impression. These distributions are typically well supported and have a large software selection as standard. The software versions may not be as cutting-edge as Gentoo, but even so it is quite good.

Linux Mint really took off when Ubuntu starting forcing people down the Gnome 3 path and dramatically changed the desktop around 2011 or 2012. I saw a lot of people get frustrated and walk away from Ubuntu back then, including me. When Linux Mint offered the old Gnome 2/Mate desktop along with KDE, Xfce, and others it gained popularity quickly.

The worst part about the Ubuntu method is upgrading. When they do a major version upgrade (i.e., from 12 to 13) it always seems to break things and upon reboot leaves me at a command prompt trying to figure out why X won't load or loads with settings messed up such as using fonts so tiny that I can't read anything.

For this reason, I avoid major upgrades as long as possible and put my “home” directory on a separate partition so that the entire O/S can be erased and reloaded if necessary.

There are many forums where you can get help, including from the Canonical company itself, and the postings I've read all have been friendly and helpful.

Manjaro

Arch Linux does a good job of being “lean” while offering pre-compiled (binary) packages so you don't have to build them yourself, as with Gentoo. Manjaro is a derivative of Arch, using its package manager but having its own software repository. I find Manjaro to be extremely good, having excellent support for a wide range of laptop and desktop hardware.

Manjaro offers a “rolling” upgrade system. Unlike Ubuntu-style distributions which offer a major upgrade every year or so, which often can break your system or result in major unexpected changes in methods of operation, Manjaro just keeps updating what you have without changing the underlying method of operation. In this way I think it is a nice compromise for people who would like the benefits of Gentoo but don't want to build packages from source.

Sabayon

Sabayon is a Linux that takes Gentoo's technical advantages and tries to make it as friendly as Ubuntu. They do a very good job of making upgrades smooth, but occasionally there are upgrades that cause problems (although less than Ubuntu and usually with less serious impact on your system). If you want to learn some things about Gentoo but want the “user friendly” aspect of Ubuntu, Sabayon is a good choice. The negative part of Sabayon is that there are fewer people using it so you will not have millions of people you can go to for advice like you can for Ubuntu or Gentoo. I believe there are Sabayon forums, but I have never used them.

Red Hat, CentOS, Scientific

All of these distributions are essentially the same: they all derive from the Red Hat list of packages. My impression of the differences are:

  • Red Hat is the commercial (i.e., with support and very expensive) Linux targeted at large Enterprise that requires support. In order to keep things stable, Red Hat does not update software very often except for bug fixes. As a result, the software packages tend to be quite old (most packages seem to be several years out of date).
  • CentOS and ScientificLinux both build and bundle the open-source Red Hat software. CentOS tries to essentially be a free Red Hat alternative. Scientific Linux focuses on support for scientific research, so its default blend of software is different than CentOS, but of course you can install whatever you want after it is loaded.
  • Fedora is the “early release” of the next Red Hat version where they test things. People who want Red Hat with more current software will use Fedora.

SuSE

I started using SuSE in 1998, long before Novell bought them, and found it to be an excellent distribution. Their YAST and Zypper package management tools are well regarded by some people. Since I switched to Gentoo in 2004 I have not found much use for SuSE and have had difficulty getting it to work with all of the hardware in my laptops whenever I want to check it out, so I really can't say much more than that.

Solus

I installed Solus recently to see what it was like. It has a clean appearance, a desktop called “budgie” that is a bit different from others, and has good hardware support for everything in my system. The available packages was quite limited, so I could not find a benefit to using it at this time, but I left it installed to explore further in the future, to see how it matures.

Linux From Scratch

The Linux From Scratch (LFS) has intrigued me for years, since before I started using Gentoo. It is a book, not a distribution, that tells you how to build your own Linux system. What a great educational resource that is!

Install them all

Hard disk drives are so huge these days that you can put a 2TB or larger drive in a laptop and put as many varieties of Linux on it as you want to try or have occasion to use.

The GrUB boot loader does a good job of managing all the installed operating systems. The newer GrUB 2 is more automated, but its configuration and maintenance is more complicated than the old original so when something goes wrong I find it takes a lot longer to fix. For this reason I have chosen to stay with GrUB 0.97.

If you want to use GrUB version 0.97, which you can install with Gentoo, then I recommend making a separate boot partition and that you be careful to not let other distributions install GrUB 2. This means you will manually manage the GrUB configuration file using a text editor. I find this easy, but to each his own.

If you ever accidentally install a new distribution and it overwrites your GrUB 0.97 loader with version 2, you can just boot a Gentoo rescue image, mount your Gentoo partition, run grub (version 0.97), then just do the root and setup commands to get things back as they were.