Five Reasons to use Debian as a Server
If you choose Linux as the operating system for your server, the next big question is: “Which Linux distro should I use on my Linux server?”. Since different servers are intended to perform different tasks, the answer to this question is not easy.
Many people choose a distro which provides commercial support. This might be a (reasonable) requirement of their company or even a personal choice. Red Hat Enterprise Linux (RHEL) is the world’s most popular commercial Linux distribution. Canonical also provides commercial support for Ubuntu server and Novellfor Suse Enterprise Linux.
This article refers to ordinary servers, used as web server or database server, used and administered by a professional or a small business company. We believe that community support is valuable. So, we will select a community driven distribution.
What exactly we expect from a server machine?
We want to be stable. We want to apply security and other updates easily (while server is in production). After applying security updates, the server must be productive (again) and we want as less reboots as possible. A new major release must be applied without need to re-setup the machine (downtime is a big problem for production servers). Even we need “fresh software”, there is not need for cutting edge software (this is a requirement for desktop machines, not for server boxes).
Debian (stable) meets these requirements. Debian is our choice for server operating system. The reasons are:
Debian is not exactly a rolling release, but a live system can be upgraded to next stable release, using
apt-get package manager. This is not a “piece of cake”, but is a well documented procedure. Usually, there is no need to reboot or switch into single-user mode.
Common system updates of running release are very safe using just a single command:
apt-get update && apt-get -V upgrade. Updates can be automated, but this is not recommended. Excellent tools are available to notify admin when new updates are available (e.g apticron) and when reboot is required (update-notifier-common). Reboot is mainly required when kernel is updated. Debian Kernel updates are not so often, so system reboot is rarely required and it can be scheduled.
Debian is also compatible with a broad range of server hardware devices.
Packages have been tested thoroughly before each Debian release. This is mainly the reason why packages are not of latest version. Releases occur every 2-3 years. Debian community is very responsive to bug fixing.Security is one of the most important Debian features.
Debian is one of the oldest distributions (active for more than 18 years). Stability is synonym with Debian. Any package has been tested thoroughly before included in a Debian stable release. Debian always has at least three releases in active maintenance: stable, testing and unstable. Of course, stable must be used in production environment.
Debian offers a broad range of software packages. Moreover, packages come preconfigured, so most programs work out-of-the-box once they’re installed. Of course, you can reconfigure packages if default configuration is not suitable for you. However, this doesn’t happen often.
On system update, Debian respects existing configuration and prompts admin the differences of local and new configuration file.
5. Free – Open Source
Last but not least, Debian adheres to the open source philosophy, so you are free to use the software that best suits your business needs. See Debian Social Contract for more.
What about other distributions?
Centos is actually a community version of Red Hat Enterprise Linux. It has many advantages, which Debian offers. The packages are updated using
yum, while Debian uses
apt-get. Apt-get is more advanced than yum and more stable. Debian packages are better organized in repositories than these in Centos. However, Centos remain a great option for “Red Hat oriented” users.
Ubuntu (server edition) is actually based on Debian. Packages and Kernel are newer, but this is not necessarily an advantage for server machines.
Fedora (another Red Hat flavor) comparing to Centos seems to be what Ubuntu is for Debian.
Other distributions like Gentoo and Archlinux (rolling releases) offer cutting edge packages. There are great releases, but update process is not always easy and requires advanced administrator capabilities.
Actually, there are not huge differences between Linux distributions. Every distro has pros and cons. You should use the distribution which you know better and you like more. However, some distributions are best suited to server environment (stability, security), while other are more convenient for desktop use (cutting edge software, friendly interface).
I quoted above my arguments, why Debian should be the first choice for server environment. Which is your favorite Linux distro for server?