A Linux distribution or GNU/Linux distribution, sometimes also called a distro, is a complete Linux operating system: a collection of free software (mainly the GNU system) and sometimes non-free software created by individuals, groups and organizations from around the world and having the Linux kernel at its core. Companies such as Red Hat, SuSE and MandrakeSoft as well as the community projects such as Debian and Gentoo Linux, compile the software and provide it as a complete system ready to install and use.

Table of contents
1 Overview
2 General-purpose distributions
3 Consortia
4 Special-purpose distributions
5 Interdistribution converter
6 External links

Overview

Linux distributions started to appear soon after the Linux kernel was used by individuals outside the original Linux programmers, who were more interested in developing the operating system than in the programs or user interface. Before the first distributions, a Linux user was forced to be a UNIX expert, not only knowing what libraries and executables were needed to successfully get Linux to boot and run, but important details concerning the files in the system; it was not a time for the faint of heart!

Early distributions included: MCC Interim Linux, which was made available to the public for download on the ftp server of University of Manchester in February, 1992; TAMU, created by individuals at Texas A & M about the same time, and SLS. None of these distributions were well maintained, and when the owner of the SLS distribution refused to accept fixes he had submitted, Patrick Volkerding created the Slackware Linux distribution, the oldest distribution still in active use.

Linux distributions attracted users as an alternative to the Microsoft Windows operating systems and MacOS on the desktop, mostly among people used to Unix from work or school. They embraced for its low cost, and that the source code was included for most of the software included. It has proven more popular in the server market, primarily for Web and database servers.

The Linux kernel and much of the additional software making up a typical Linux-based system is free software; even more of it falls under the somewhat broader definition of open source software. Like all Free and Open Source software, it is distributed by its maintainers in source code form. This form has to be compiled into binary or executable form first before it can be run directly.

A Linux distribution offers compiled versions of the Linux kernel, standard system libraries, and assorted programs that make up an operating system. Many provide an install process similar to other operating systems which are distributed in binary form (Solaris Operating Environment, Microsoft Windows, etc.) Other self-hosting distributions (Gentoo Linux, etc.) provide the source code of all software and binaries only of a basic kernel, compiler toolchain, and installer, and the installer compiles all the software specifically for the machine's microarchitecture.

Distributions are normally segmented into packages, each one holding a specific application or service: one package may hold a library for handling PNG images, another may contain a number of fonts, while a third one supplies a web browser.

In addition to just providing packaged compiled code, most distributions offer tools for installation/removal of packages that are more powerful than simple archiving software. This software is said to be the package management system of the distribution. Each package would contain meta-information like description, version, "dependencies", etc. The package management system can evaluate this meta-information, to allow package searches, automatic upgrade to newer versions, checking that all dependencies of a package are fulfilled and/or fulfilling them automatically, and more.

Although Linux distributions often contain much more software than the typical commercial operating system, it is normal for administrators to install software that is not available through the distribution (or only in an older version). If this software is distributed in source form, this involves compilation. However, if a program is installed from source code (such as a new version of a program for which the distribution publisher has not yet created a package), the state of the system may fall out of synchronization with the state of the package manager's database, and the user will need to override the package manager's dependency checker.

Typical distributions also incorporate some configuration management, as many programs need to be configured correctly to be useful. A default configuration tuned to the distribution may be provided, or the administrator may be queried for configuration information by means easier than the traditional editing of configuration files.

By replacing everything provided by a distribution, an administrator may reach a distribution-less state: everything was retrieved, compiled, configured, and installed by oneself. It is possible to build such a system from the start, but one needs a way to generate the first binaries until the system is self-hosting (has a bootable kernel, and compilation tools to generate more binaries). This can be reached via compilation on another system that is able to build binaries for the intended target (possibly by cross-compilation). See Linux From Scratch Guide for instructions.

General-purpose distributions

These are the most popular and therefore the most common distributions of Linux for PCs and other workstations, listed approximately alphabetically; a list by userbase share would have Beehive far lower, and Redhat far higher, among others.:

See: DistroWatch for a comprehensive, up-to-date listing.

They can use different file base distributions ( deb for Debian, RPM for Fedora and similar and so on), desktop environment (KDE, GNOME, Fluxbox...), media (1 or 2 floppys, LiveCD, bootable Keydrive, only hard diks installation), localization ( for a language, country), Free software direction or not, for a specific pourpose ( firewalls and security, robotics, ...) and so on:

  • ASPLinux: RedHat-compatible version of GNU/Linux (with the out-of-box support of Russian and other Cyrillic-based languages).
  • Beehive
  • Conectiva: a Brazilian distribution. Founding member of United Linux.
  • GNU Debian: Put together by countless volunteers, Debian has the largest selection of packages (over 8000) of any distribution. It supports the largest number of hardware platforms, and is well known for ease of upgrading.
  • Gentoo: mainly for hobbyists, developers and network professionals. All software that you specify arrives as source code. This unique approach has a twofold intention: to promote (not guarantee!) usage on almost any platform, and to allow compilers of this source code to optimize for platform specific performance.
  • GoboLinux: an alternative Linux distribution which redefines the entire filesystem hierarchy.
  • Icepack Linux is a user-friendly, full-featured operating system, pre-configured, well structured and easy to work with.
  • Impi Linux: a Debian based Linux from South Africa that focuses on the needs of African users.
  • Knoppix: A "LiveCD Debian Linux" distribution which is instantly usable after booting from the CD and comes with 2GB of software in the single CD. The Gnobian version is Gnoppix.
  • Lindows: Another desktop-oriented distribution, which is based on licensed Xandros code and Debian. Additional software is available from Lindows or via Debian's apt command.
  • LinEx : Gnobian official distribution of Extremadura (Spain)
  • Linux from Scratch: A source code-based distribution, similar, but pre-dating Gentoo.
  • Linux Mobile System: a Fedora/Red Hat Linux full Linux system whose support is the new USB keydrives.
  • LinuxXP: provide people who never tried linux before with an easy-to-use linux distribution without the hassle of re-partioning their HD and going thru complicated processes of configuring their H/W.
  • Lycoris Desktop/LX: targeted for the desktop market, comparable to Mandrake for ease of installation and use.
  • Mandrake: Mandrake tries to be the easiest distribution for beginners. Originally a Red Hat variant optimized for the Pentium, it has diverged while retaining strong compatibility.
  • MEPIS: An easy-to-use Debian-based distribution which also runs as a LiveCD, allowing you to try out MEPIS before you decide to install it on your hard drive.
  • Morphix a LiveCD Debian distribution with different flavours, including GNOME.
  • Red Flag Linux: Linux targetted for China.
  • Red Hat Linux, nowadays Fedora Linux: The most popular distribution in the USA by a large margin, Red Hat has also served as a base for many other distributions.
  • Slackware: One of the oldest distributions still available.
  • Sorcerer GNU/Linux
  • SPBLinux: linux mini distribution for floppys and USB keydrives.
  • SuSE: Based in Germany, SuSE is the most popular distribution in Europe. Like Red Hat, it is a rather large distribution; it features a unique configuration tool named YaST. Founding member of United Linux.
  • Trustix: a somewhat hardened distribution focused on security.
  • Turbolinux: Linux distribution popular in Asia. Member of United Linux.
  • Xandros: A newcomer in the distribution market, Xandros (based on the defunct Corel Linux) focuses on the desktop market. The Xandros distribution, unlike most others, may not be freely copied, as it contains commercial software. Xandros is based on Debian and is designed to be compatible with Debian's dpkg package management system.
  • YOPER: "Your Operating System", a desktop Linux from New Zealand

Consortia

  • United Linux - Group of Linux distributors who have banded together to build a common base distribution.

Special-purpose distributions

Some groups compile special purpose Linux distributions as turnkey firewalls, for embedded systems, and for other special purposes.

Special-purpose Linux Distributions:

There are more than 100 different Linux distributions. See the external links for additional lists of distributions.

Interdistribution converter

Alien is a program that converts between different linux distribution file formats ( like rpm, dpkg, stampede slp, and slackware tgz). If you want to use a package from another distribution than the one you have installed on your system, you can use alien to convert it to your preferred package format and install it. [1].

See also: List of popular Unix programs

External links