Watch the video version of this article
First and foremost, there is no one general answer that’s correct. If there was only one suitable choice, than you wouldn’t see so many comments online arguing which distribution is best (and this article wouldn’t be necessary). The correct answer as far as which distro is superior is the one that enables you or your organization to accomplish the goal you’ve purchased the server for. All distributions are worth checking out, but some will focus on certain areas more than others. Let’s take a quick look at some of the more popular choices, along with the pros and cons of each.
Read the doc: Choosing a Linux Distribution
If you’re looking for a distribution that’s rock-solid, doesn’t face frequent changes, and works fine for a variety of use-cases – then look no further than Debian. Debian is one of the oldest Linux distributions around, so you can think of it as an industry veteran. Debian is celebrated by its fan-base, with common elements of praise being its stability, a huge number of available packages, and the fact that it’s community-based rather than existing to serve the benefits of a particular company. There are three variations of Debian, which include Stable, Testing, and Unstable. In general, most administrators utilize the Stable version on servers, with the other flavors targeted toward the next steps in Debian’s lifecycle, and give developers a preview of what’s to come.
Another benefit of debian is APT (short for Advanced Package Tool). Package managers are a common element of Linux nowadays, but Debian is the distribution that made this concept famous. At a time when administrators had to figure out how to satisfy dependencies on their own, APT came along and simplified the process. Like other modern package managers, APT takes care of figuring out dependencies for you, and automatically installs the packages that are necessary to satisfy a request. Today, the majority of Linux distributions have their own package manager that does the same thing (more or less) but there’s something to be said of using a distribution that pioneered this approach.
So far, Debian sounds great, right? Well, it is – but just like all other distributions, there are cons as well. The most jarring of which is the fact that the versions of software included in the repositories of its “Stable” branch are often much older than other distributions. The reason for this is because the stable edition isn’t focused on bleeding edge software – it’s called “Stable” for a reason. In order for packages to be included in Debian’s repositories, they have to prove themselves by going through the Unstable and Testing repositories first. This process may sound like a blessing rather than a curse, and it certainly is – however, if you attempt to install Debian on current hardware you might have a hard time with compatibility. Due to the packages in stable versions of Debian being outdated, software support for physical hardware devices (such as available drivers) are often behind other distros. This might mean that if you have relatively recent hardware, the required version of the Linux kernel or driver packages might not be new enough to support it. Sure, enterprise hardware moves slower than consumer devices, but there still might be issues with compatibility that you normally wouldn’t face with other distros.
Out of date packages aside, the software available within Debian Stable enjoy security updates for at least several years, and during that time there will be few (if any) chaotic changes. In addition, if you’re deploying Linux within a cloud platform, then the hardware compatibility issue isn’t really an issue for you at all – cloud providers typically modify their Debian deployment images with the required changes to make everything function as it should. Debian is a recommended distribution for administrators that are building long-term infrastructure without sudden surprises. Overall, Debian is great – just be sure to check compatibility first before you attempt to install it.
Ubuntu isn’t just intended for use on desktops – Canonical (the makers of Ubuntu) produce a “Server” edition as well. In fact, Ubuntu is quite possibly the most popular distribution for servers, having enjoyed a sizable presence on physical and virtual servers alike. Under the hood, Ubuntu is actually forked from Debian. But Ubuntu is more than just a simple respin, the distribution contains additional benefits on top of Debian’s base to give you even more features. And some of the added functionality includes tools such as JuJu that provide the ability to quickly spin up entire Openstack and Kubernetes deployments, and services like MAAS (Metal-as-a-Service) enable you to provision physical servers by booting them directly into an installation image.
There are two kinds of releases when it comes to Ubuntu; intermediary and long-term support. Every two years, a new LTS version is released. For the most part, LTS releases are the recommended versions of Ubuntu to run on servers. Intermediary releases are great too, but have a shorter shelf life. LTS releases receive security updates for five years, while intermediary (non-LTS) releases are supported for just 9 months. The intermediary releases exist as preview of what’s to come, and offers developers an opportunity to test their applications against the next generation of technologies. Unless you need to test software against newer technologies (or you’d like to join the Ubuntu community and help develop or test newer releases) then it’s best to stick with LTS. Five years of support is more appropriate for enterprise use-cases anyway.
Another improvement Ubuntu makes over Debian, is that it has newer packages available. And having newer packages also means that Ubuntu has better hardware support, as it provides a newer Linux kernel than Debian (as well as newer drivers). There’s a far less chance you’ll encounter unsupported hardware while using Ubuntu compared to Debian. However, hardware compatibility is never guaranteed (regardless of the operating system).
Having newer software in Ubuntu doesn’t necessarily imply that it’s less stable. Yes, the packages in Ubuntu’s repositories are more bleeding edge, but its developers spend a great amount of time ensuring stability to the point they even apply additional patches to solidify their platform.
When it comes to downsides, Ubuntu is fairly well-rounded. However, the fact that it’s a distribution maintained by a company rather than solely being a community project can sometimes divide the overall opinion of the Linux community. Many administrators are more than fine with this, while others prefer to go another direction. Canonical has been a great steward for Ubuntu, and has helped it reach heights of popularity that other distributions could only dream of. On the other hand, there have been some decisions that haven’t been met with universal acclaim. Thankfully, Ubuntu and Debian share so much in common that migrating from one to another isn’t the most difficult change you’ll ever experience. But with the backing of Canonical comes the ability to purchase a support plan with the distribution, in case your team needs the extra help.
Ubuntu is a great choice for anyone with newer hardware, or someone that wants to use newer technologies. Innovations such as MAAS, JuJu (among others) adds great incentive for administrators to give it a shot, and its popularity makes it easy to find assistance. However, if you prefer a community-focused distribution, Debian might be a better fit.
Red Hat Enterprise Linux
Red Hat Enterprise Linux (or RHEL for short) is one of the longest running distributions we have today. There are entire certifications dedicated to just this distribution, and it has a strong presence in the enterprise. Unlike the other distributions on this list, it’s not available for a free download. The software contained within the distribution is still open-source, but a subscription is required. For this reason, whether or not to choose RHEL comes down to your budget. And it’s worth the cost – RHEL has more than proven itself over the years, and is trusted within many data centers. This distribution has also given rise to others, such as CentOS, Oracle Enterprise Linux, Alma Linux, Fedora, among others.
RHEL has transitioned from the Yum package manager to the newer DNF, and there have been many improvements over the years. The distribution utilizes the RPM package format, one of the oldest formats in existence. Other distributions, such as SuSE, Fedora, CentOS, and many others, utilize the same format. The distribution is known to support many server use-cases, such as networking, containerization, virtual machines, and much more.
RHEL is a great pick for a company that’s looking for a stable distribution that also includes options for support.
Like Ubuntu, CentOS is one of the most popular server distributions in existence. It’s nearly impossible to read topics within a Linux community and not find it mentioned a few times. And with good reason – like Debian, CentOS is an enterprise-focused distribution with a large number of deployments. Many administrators enjoy its rock-solid stability, and its popularity means that there’s no shortage of tutorials and how to’s online to guide you through just about anything you might want to accomplish with it.
Nowadays, deciding whether or not to go with CentOS isn’t the same conversation it used to be as recently as last year, as the project recently changed direction. And it’s not necessarily a bad direction, but a divisive one nonetheless. In the past, CentOS was a free-to-download recompile of Red Hat Enterprise Linux. A new release of CentOS was the same product as the matching version of RHEL, with the main difference being that the Red Hat branding was stripped away, and replaced with CentOS branding.
Later on, CentOS was actually acquired by Red Hat, and then later on Red Hat was acquired by IBM. While that in and of itself isn’t a necessarily a bad thing, the distribution is no longer a de-branded version of Red Hat Enterprise Linux. Recently, it was announced that CentOS Stream would be the successor to CentOS as we used to know it, and Stream itself is a now an always evolving distribution and is no longer a 1:1 drop-in replacement for Red Hat as it used to be.
New direction aside, CentOS is still a worthy distribution to check out. It may not have the same focus as before, but that doesn’t necessarily mean it’s less stable. It’s a good fit for administrators looking for a more evolved enterprise distribution, who don’t necessarily have a requirement to be compatible with Red Hat.
Alma Linux & Rocky Linux
Both Alma Linux and Rocky Linux are featured in this slot, because both of them are 1:1 compatible with RHEL. In the past, CentOS was celebrated as a free rebuild of RHEL, but then later changed direction (as mentioned above). This new direction resulted in some interesting developments in the Linux community, to say the least. Both Alma Linux and Rocky Linux were born out of that new direction, with the intent to continue to be what CentOS used to be.
Regardless of whether you choose Alma or Rocky, both aim to be a drop-in replacement for RHEL. Since both are built from source code from RHEL, these distributions enable you to benefit from the stability of Red Hat’s code, yet they’re free to download and no subscription is required. And since these distributions are based on Red Hat, the same benefits are found with them as well – enterprise-grade stability and software compatibility, to name a few. Being a drop-in replacement for RHEL means that any scripts you may have that ran on CentOS and Red Hat itself, should continue to function within Alma and Rocky Linux with little to no change being necessary.
Alma Linux and Rocky Linux are a great fit for those of you looking for an enterprise-grade distribution that’s compatible with Red Hat technologies, as well as administrators that are setting up a data center for the first time.
SUSE is another distribution that is an industry veteran, as it’s been around since the 90’s. There are two different versions of SUSE available, SUSE Linux Enterprise Server SLES, as well as openSUSE. The main difference between the two is that SLES is an enterprise-grade Linux distribution for both workstations and servers, while openSUSE is controlled by the community and exists to promote the use of open-source software. Primarily, openSUSE is more likely to be found on workstations – while SLES is more common in the data center. openSUSE itself exists in two different variations, Leap and Tumbleweed. Leap is a stable distribution that doesn’t see frequent change, while Tumbleweed is a “rolling” edition of openSUSE that gives its users a preview of the latest Linux technologies.
For servers, SLES is a great choice. Like RHEL, SLES is available only with a support agreement. And just like RHEL, it focuses on enterprise-grade stability. SLES is almost like an Enterprise software equivalent of swiss army knife, it contains tools for just about everything. Whether you intend on setting up a directory server, file server, virtualization host, containers – SLES supports those use-cases and much more. To be fair, you can configure all of those same services in other distributions of Linux as well, but one thing that sets SUSE apart from other choices is YaST. YaST is one of the most praised tools within the Linux community, because it gives administrators easy access to set up their servers for the most popular use-cases all from one single tool. Whether you’re setting up a server to host a web application or any other Enterprise purpose you can think of, SUSE is up to the task.
On the downside, depending on where you’re located geographically, SLES either has a large footprint or a smaller one. Usage with SUSE varies greatly depending on location, and it’s often not as well-known in some circles as distributions such as Red Hat. However, SUSE is a powerful distribution for just about any project you might be working on. In addition, the distribution has some fairly unique features, one of which being the Open Build Service which is intended to make it easier for you to deploy software.
Are there more distributions than those that might be a good fit for your server? Well, of course – there’s no shortage of Linux distributions available. Those that were included within this list are the most popular and serve a variety of use-cases. However, this is by no means an exhaustive list. When it comes down to it, the proper choice is the one that fits your personal use-case best. As part of your decision, be sure to factor in the size of the community, which will determine how quickly you might be able to receive support from communities (or companies, in the case of SUSE and Red Hat). You can’t go wrong with any of the distributions on this list, and the fact that we have such a variety to choose from gives us a wide array of options we can consider while building out servers or entire data centers.
Debian, Ubuntu, RHEL, CENTOS, Alma Linux & Rocky Linux or SuSe are all good choices for a server distribution; pick your favorite and you can’t go wrong.