Picking The Right Distribution
Posted on March 26th, 2015
When it comes to choosing a Linux distribution for a server, there are a few different choices for which distribution will suit your requirements best. Among the popular choices for today’s servers, there are typically two trains of thought; Red Hat or Debian. There are more choices, but many distributions are based on one of these. Red Hat and Debian may vary in many ways; you can tell the distinctions between the two based on their roots.
If the first choice you have to make is Red Hat or Debian, which choice do you make? This can be simple or complex depending on your needs. Both branches can provide very stable and reliable deployments. One key aspect may be the number of available packages. Debian based distributions tend to have far more packages than Red Hat based distributions. This means that if you are choosing a project where you may need a wider selection of packages then a Debian based distribution may be right for you. Another aspect to consider is that Red Hat based distributions tend to release package updates less often than Debian based distributions. While it’s easy to jump the gun and say “I always want the latest update”, it’s important to remember that package updates that are done more often also mean that they have had less testing and there is a higher probability of a error.
For Red Hat based distributions, some of the popular choices are Red Hat Enterprise Linux (RHEL), CentOS and Fedora. RHEL is a pay license based distribution and I won’t dive into the details of that distribution right now. CentOS, on the other hand, is a community driven fork of RHEL which does not require you to pay. CentOS is a very stable and very reliable OS and provides most of the same functionality as RHEL. CentOS does not carry any of the proprietary software which RHEL offers and, from typical to very advanced, CentOS is considered to be an acceptable replacement to RHEL. Fedora, which is owned by Red Hat, is considered the “testing area” for RHEL. Fedora is free to use and released much more often than RHEL/CentOS. Because of the nature of Fedora’s purpose, Fedora will always have bleeding edge packages. If having the latest package shortly after it has been made available is important then Fedora may be for you but, this also means Fedora is much less stable than RHEL or CentOS.
For Debian based distributions, the popular choices are either Debian itself or Ubuntu. Debian has a long history of being a very stable distribution. Ubuntu also provides a new distribution release twice a year where Debian tends to provide a new distribution release every 2 years. On the surface, this would make it appear that releases occur more often but when it comes to a server, you will typically want to use a LTS (Long Term Support) edition of Ubuntu for stability and those releases only happen once every two years as well. Some people may argue that Ubuntu may be more current than Debian, regarding packages. Some may feel that Ubuntu is more prone to bugs then Debian. It’s hard to provide a conclusive answer about either of those opinions because some of it may rely on specific factors and some of it may rely on specific configurations.
One final thing to consider when picking your distribution is which one is supported best for what you need it to do. If you only need to run a simple web server for WordPress or act as a mail server, or another common task, then it’s likely any distribution will be far more than adequate. If you need your server to run a specific application, even if it’s a web application, there may be cases where the app may be better suited to a specific distribution. If you have your own developers or your own test server and you use a specific distribution for that, it’s best to continue to use the same distribution for your production servers.
Ubuntu Server 14.04. I have been using Linux for 17 years and have changed from one distribution to another every so often based on what works for me. I have used many distributions including Red Hat (old distro), Red Hat Enterprise Linux, Fedora, Suse, Debian, Ubuntu, Arch and even LFS. I have also used FreeBSD and OpenBSD and even Windows Server. When it comes to servers, right now, my main choice is Ubuntu. This may change in a couple years depending on how various distributions change over time. I also know that for some specific deployment scenarios, a certain app or a type of service where, I may need to choose another distribution best suited for that specific need.
Despite my preference though, someone else’s choice of a Linux distribution is what they feel comfortable with for whatever reason. There is no wrong answer on which distribution best suites you. This reminds me of a web comic from The Oatmeal – 8 Things Worth Knowing About Eating Sushi. He describes the various aspects of sushi, how to eat it properly, what you shouldn’t do, etc and then concludes with the statement “Remember that there’s no wrong way to eat sushi. If the food is going into your face and you’re enjoying yourself, then you’re probably doing it right”.