Linux Distributions Compared
A Linux distribution is a package that contains the Linux kernel, application and utility programs and an installation method. While all distributions are based on the same or similar kernels and many of the same utilities, each distribution has something different to offer the consumer. Thus, while there really isn't a best distribution, there are distributions that are better for different users. In this article, we attempt to offer you enough information so you can select the distribution best for you.
Is this a cop-out? Are we shirking our duty? It has become clear to us that it would be hard for Linux Journal to rank the distributions; our staff members have different personal favorite distributions and defend their choices rationally—occasionally even argumentatively. At Linux Journal, we use Linux extensively—nearly exclusively—and we still don't agree which distribution is the best. We have different priorities, skills, and expectations, and we believe this is true of our readers as well.
Before we get too deep into this review, note that as this is being written, the Linux 2.0 kernel is about to be released (the scheduled release date is June 9, 1996). This new kernel offers some major enhancements. (See the interview with Linus in this issue for details.) The distributions will surely be updated to take advantage of this new kernel. Look for an updated review in the special Buyer's Guide issue of Linux Journal, which will be out in February 1997.
Some of the descriptive text that originally appeared in the March 1996 review article has been removed. If you want to look at all the information presented in that issue, it is available on our web site, /issue/0023.
Many new Linux users confuse the version of the distribution they are using with the version number of the kernel. As mentioned above, the Linux kernel is just one of the many pieces of software needed to create an entire distribution. Each distribution uses version numbers of its own to keep track of the state of the entire distribution, which has more to do with the collection of programs than with the particular kernel involved. Indeed, many distributions have included two or more different kernel versions in one version of the distribution.
However, it's worth understanding the version numbers used for the Linux kernel itself, since the kernel is a key part of any Linux distribution. Kernel version numbers come in three parts: the major version number, the minor version number, and the patch-level. The Linux kernel is being constantly developed by a large team of developers, and while they add new features, they occasionally introduce new bugs. To keep this from causing a problem for Linux users, the developers periodically dedicate several months to fixing bugs and creating a very robust, stable kernel. When this is done, a stable version is released with an even-numbered minor version number. The developers then begin adding features (and temporarily breaking things sometimes) to development versions with odd-numbered minor version numbers.
Unless you want to live on the “bleeding edge” of Linux development, you will probably want to stick with the latest stable kernel version. As of this writing, the latest stable kernel version is 2.0, but most distributions are based on the previous production kernel, which is 1.2.13.
Several vendors are adding value to existing distributions in various ways. For example, Caldera is adding commercial components to Red Hat Commercial Linux to create their Caldera Network Desktop. Trans-Ameritech bases their value-added work on Slackware, trying to make it easier to install.
One of the most common sources of confusion in the Linux world today involves binary file formats (See What is a binary file format?). Most vendors have now switched from the older “a.out” binary file format to the new “ELF” binary file format.
ELF is the binary file format used by Unix System V Release 4, but that doesn't mean a Linux binary in the ELF file format is compatible with SVR4, nor does it mean that SVR4 binaries can run on Linux. The capability for Linux to run some SVR3 and SVR4 binaries is provided by the BCS2 compatibility package, which most distributions include.
One of ELF's features is extensibility; with ELF, it is possible for developers to add features that weren't thought of when the format was first designed. For instance, one Linux developer has noted that he could add icons to ELF executables without breaking any software. Icons weren't considered when ELF was developed, but the format is extensible enough that they can be easily added.
But perhaps you don't care if you can add an icon to your ELF binary, or even if anyone else can. What does ELF do for you? Fundamentally, it makes life much easier for Linux developers. It also has a few esoteric features which make it practical to support some software under Linux that was previously impractical to support. So it gives you more and better software available for Linux.
What do we mean by based?
ELF-based means the entire distribution or, at least, almost the entire distribution, consists of ELF binaries. Binaries in the a.out format are not provided with the system, or if they are provided, they either aren't part of the “core” of the system or they are not available in ELF format.
By contrast, “supports ELF” means that, while the distribution is partially or completely built of binaries in the a.out format, the ELF programming libraries are included so that ELF binaries will also run.
Fast/Flexible Linux OS Recovery
On Demand Now
In this live one-hour webinar, learn how to enhance your existing backup strategies for complete disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible full-system recovery solution for UNIX and Linux systems.
Join Linux Journal's Shawn Powers and David Huffman, President/CEO, Storix, Inc.
Free to Linux Journal readers.Register Now!
- Server Hardening
- BitTorrent Inc.'s Sync
- The Death of RoboVM
- The Humble Hacker?
- EnterpriseDB's EDB Postgres Advanced Server and EDB Postgres Enterprise Manager
- New Container Image Standard Promises More Portable Apps
- Open-Source Project Secretly Funded by CIA
- The US Government and Open-Source Software
- Canonical and BQ's Aquaris M10 Ubuntu Edition Tablet
- ACI Worldwide's UP Retail Payments
In modern computer systems, privacy and security are mandatory. However, connections from the outside over public networks automatically imply risks. One easily available solution to avoid eavesdroppers’ attempts is SSH. But, its wide adoption during the past 21 years has made it a target for attackers, so hardening your system properly is a must.
Additionally, in highly regulated markets, you must comply with specific operational requirements, proving that you conform to standards and even that you have included new mandatory authentication methods, such as two-factor authentication. In this ebook, I discuss SSH and how to configure and manage it to guarantee that your network is safe, your data is secure and that you comply with relevant regulations.Get the Guide