Selecting a Distribution

One of the first question most new Linux users ask is which one to get. It seems that there's a whole bunch of systems out there called "Linux". Someone might see such names as Fedora, Ubuntu, Debian, Slackware, Gentoo, and at least a few dozen others. Each of these is called a distribution of Linux.

What's a Distribution?

Unlike other systems, Linux is completely modular; every piece is made by a different group. For example, the underlying graphics system is developed by the people at X.org. The core of the Linux system (called the Kernel) is maintained by Linus Torvalds, and thousands of other people contribute to it. Most of the system utilities are developed as part of the GNU project.

At first, a person would have to download and install each piece, one by one. Several people found this less than optimal. So, these days, there are groups who get everything together and release a completely working Linux system, either for sale in a box, or for download. These releases are called distributions, or distros for short. Distributions can vary in what software they include and how they install. For example, Fedora installs simply by booting off a CD or DVD and copying files to your computer's hard drive. Gentoo, on the onther hand installs by copying a minimal set of files and installing the reamining portion from source code. There's even a book on doing it the old way.

Package Management

Since every piece of a Linux system is developed by a different group, they also have different means of installation. Being that Linux is an open-source operating system, most of the utilities software for it is originally distributed as source code, the instructions programmers write to make a computer program. The source code for a program must be converted into a binary (or executable) file in order to run on a system. Many people call this process building the application. Most projects use a build system developed by the GNU project to allow users to build their software, and this method is usually taken for granted by advanced Linux users. Some projects, however, use other build systems. Distributions take care of this by putting the built form of a piece of software into a package. A package is simply an installer file for the software.

There are two kinds of package managers which are commonly used these days: Debian packages and the Red Hat Package Manager (RPM). Debian packages were original developed for the Debian GNU/Linux system. Now, several distributions use Debian's package format. RPM was original developed for Red Hat Linux. Red Hat Linux is no longer around, but there are two common descendents: Red Hat Enterprise Linux, and Fedora. When it came time to select one as a standard package format, RPM became the standard format. Debian-based systems usually have the ability to install software from an RPM file, but its generally better to install from a Debian package on those systems.

What to Compare

Each distribution is designed in a specific way, for a specific audience. Some are designed for people who want to focus on other things. Some are designed for masochistic or obsessive computer geeks. The things that have the biggest impact on how a distribution works are the installation process and the package manager.

Some installers are text-based. Text-based installers use text menus, and such. Others are graphical, these create a minimal graphical interface for the installation. A newer way of installing is from a live CD. A live CD is a complete working system ready to run without installing it first. When you wish to install the distribution, there's a program on the live CD that goes through the process. Live CD-based installations are generally graphical. Some distributions will switch to a configuration utility after the install is complete.

In addition to using the Debian and RPM package formats, some distributions add an additional program over the existing package manager. These additional programs are often easier to use and also automate certain common tasks in installing a package, the most common is dependancy tracking. When one package requires the functionality of another package (a framework for example), the program will install the other package as well as the requested pakage. Debian, for example, includes the Advanced Packaging Tool (APT). APT was one of the first (perhaps even the first) to include dependency tracking. In the old days, dependency tracking was handled by the user, which was an inconviniance at best, and a nightmare at worst.

Not for the Newbie

Some distributions are not for beginners. Slackware's installer doesn't work on a simple system of putting the disc in and rebooting your system. Debian would be an okay start, but its installer is designed for experienced Linux users, and its default setup after installation goes straight into a command-line login screen. It requires some additional configuring to get it into a more user-friendly mode. Gentoo is the terrain of the more experienced Linux user; it's mostly an automated build from source code process to install Gentoo and its packages.

Fedora

Fedora is great for new-comers, especially the more computer savy crowd. If you already know a few things about computers, then Fedora may be more your style. To start the installation, you simply put the CD in and restart your system. Fedora has also been working on live CD-based installation. Fedora comes with a graphical installer but it can run a text-based installer if your computer isn't powerful enough for the graphical install. Fedora's installer lets you select a default option in most cases so you don't have to worry about which option to take.

Fedora uses RPM for its package management, and uses a program called Yum for easier package installation once the system is installed. Fedora includes the most popular open-source software, and it includes the most current version of each package.

Fedora's biggest weakness is the fact that it comes with certain functionality stripped because of the Fedora Project's policy of excluding software which doesn't fit within its guidelines. Generally, the missing software involves patents or software which isn't open source. There is a way around this, however. Another thing to consider is that the Fedora maintainers generally try to get the latest version of a piece of software in their installation. Sometimes this means including a testing version of the software. For example, Fedora 9 includes a beta version of Firefox 3. Once Firefox 3.0 was released, however, the release version of Firefox 3 became available for download through Fedora updates.

Ubuntu

Ubuntu is the system I recommend most to new-comers to Linux, especially people who aren't completely computer savy. It works well for technical users, though, and many advanced Linux users use Ubuntu so that they don't have to worry about manually configuring everything. Ubuntu's installer is one of the easiest out there. Ubuntu uses a live CD for installation. Thus, the installer is completely graphical. The Ubuntu installer is designed to require minimum input from the user, so technical terms aren't a problem very often.

Ubuntu uses Debian's package format. but it also comes with a graphical program for package management in addition to APT. Ubuntu only includes one application or set of application for each task. In the Linux community, there are often several programs that do the same job, but for starters you don't need to make a choice between them.

Ubuntu's weakness is that it doesn't use the latest version of most software. This can also be good, because the software has been well-tested. The package management tool suffers from the fact that you must pick from thousands of packages. So getting the right package usually requires you to know what the package is called before you install it. There isn't a big button saying "Install Movie Playing Software". If you do know the name of the package you want to install, Ubuntu's tool is the easiest graphical tool I've seen for package installation.

Strengths of Both Ubuntu and Fedora

Both Fedora and Ubuntu have extensive libraries of additional packages. Once installed, they both default to a graphical system, and they come with graphical utilities to assist in system setup and maintanance. With either, a user can use the system without ever touching a command-line (text mode), though you always have the choice to do so if you're fealing a little adventureous.

It's Your Choice

Linux has several distributions for different uses, and the choice is yours when you pick one. Many of them are for niche cases and experienced users, but Fedora, Ubuntu, and possably some others that I over-looked are more suitable for new users. Remember to keep in mind that some install easier than others, and that some handle installed software better than others, or just plain differently. Most of all, have fun and enjoy the new experience. Eventually—after trying a few— you will find the distribution that's right for you.

Copyright 2006, 2007, 2008 .
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 License.
http://creativecommons.org/licenses/by-sa/3.0/us/