Lesson 5 of 7 · History
Linux distributions — Slackware, Debian, Red Hat, Ubuntu and the others
Objective
Understand what a distribution is, where the major families you will meet in companies come from, and why the command to install software changes from one server to another.
Key points
- The kernel alone is not enough: a distribution brings together the kernel, the GNU tools, thousands of programs, an installer and a package manager.
- The ancestors still alive were born in 1993: Slackware and Debian. Red Hat and SUSE followed in 1994.
- Two major families dominate servers: Debian (
.debpackages,apt) and Red Hat (.rpmpackages,yum/dnf). - Ubuntu (2004) derives from Debian; Fedora (2003) prepares the future of RHEL.
- A distribution publishes either fixed releases (Debian, RHEL, Ubuntu LTS) or continuously (rolling release: Arch).
1. Why distributions?
In 1992, installing Linux was an adventure: you had to get the kernel from a server, compile dozens of GNU programs yourself, copy them onto floppy disks, and hope that everything worked together.
A distribution does this work for you. Compare it with a kitchen:
| In a kitchen | In a distribution |
|---|---|
| The ingredients (flour, eggs, sugar) | The Linux kernel, bash, coreutils, nginx, MariaDB… |
| The recipe, tested so that everything goes together | The versions chosen and tested with one another |
| The chef and their style | The distribution team, its choices, its philosophy |
| Regular delivery of fresh ingredients | Security updates |
In practice, a distribution provides:
- an installer (Anaconda at Red Hat, debian-installer, Subiquity at Ubuntu);
- a package manager to install, update and remove software;
- repositories: servers that host tens of thousands of ready-to-use packages;
- default settings: boot system, firewall, security, file locations;
- a release policy and a support period.
2. The pioneers (1992-1993)
The very first distributions were called MCC Interim Linux (1992, University of Manchester) and SLS (Softlanding Linux System, 1992). SLS was practical but full of bugs. Two people decided to do better.
Slackware (July 1993)
Patrick Volkerding, an American student, fixed SLS for his own use, then published the result: Slackware. It is the oldest distribution still maintained. Its philosophy: stay close to UNIX, simple, with no "magic" tools. It is very little used in companies today, but it has trained generations of administrators.
Debian (16 August 1993)
Ian Murdock, a student at Purdue University, announced on 16 August 1993 a distribution built openly by a community, and not by a single person. The name combines Debra (his girlfriend at the time) and Ian.
Debian has three characteristics that still matter:
- It belongs to no company. Thousands of volunteers keep it alive, according to a Social Contract (1997) that promises to remain 100% free.
- Its Debian Free Software Guidelines (DFSG) served as the basis for the definition of open source (lesson 0.3).
- Its releases are named after characters from Toy Story:
buzz(1.1, 1996),woody,squeeze,jessie,stretch,buster,bullseye(11),bookworm(12),trixie(13)…
Debian also invented a powerful package system: dpkg (mid-1990s), then APT (1998), which downloads and installs dependencies automatically. At the time, it was a small revolution.
3. The commercial distributions (1994)
Red Hat (1994)
Marc Ewing created Red Hat Linux in 1994; Bob Young partnered with him to found the company Red Hat (1995). Red Hat invented the RPM package format (Red Hat Package Manager), then made it free. Red Hat went public in August 1999, with spectacular success: Linux became serious business in the eyes of companies.
In 2003, Red Hat stopped its consumer "Red Hat Linux" to focus on RHEL (paid, for companies) and launched Fedora (free of charge, community-driven). This whole saga is detailed in lesson 0.6.
SUSE (1992-1994)
The German company S.u.S.E. (Nuremberg, founded in 1992) published its first distribution in 1994, initially based on Slackware. It became the reference in Europe, with its graphical configuration tool YaST. Today, SUSE Linux Enterprise (SLES) competes with RHEL in large companies, and openSUSE (2005) is its community version. SUSE uses RPM packages with its own tool, zypper.
4. Ubuntu: Linux for everyone (2004)
In 2004, the South African entrepreneur Mark Shuttleworth founded the company Canonical and launched Ubuntu, a word of Bantu origin that evokes humanity and sharing. The goal: a Linux that is easy, up to date, with a predictable schedule.
- Debian base: the same
.debpackages, the sameapttool. - One release every six months, numbered by year and month:
24.04= April 2024. - One LTS release (Long Term Support) every two years, in April of even years: 20.04, 22.04, 24.04… It is supported for 5 years (and longer with the paid Ubuntu Pro subscription).
- Animal names, in alphabetical order since 2006:
jammy(22.04, Jammy Jellyfish),noble(24.04, Noble Numbat)…
Ubuntu has become the most widespread Linux in the cloud and on developers' workstations. It has derivatives of its own, such as Linux Mint (2006).
5. The other families to know
| Distribution | Year | Packages | Main idea |
|---|---|---|---|
| Gentoo | 2002 | Compiled from source (emerge) |
Optimise everything for your machine |
| Arch Linux | 2002 | pacman |
Simple, minimalist, rolling release; a reference wiki for all Linux systems |
| Alpine Linux | 2005-2006 | apk |
Tiny and secure (musl, BusyBox): widely used as a base for container images |
| Linux Mint | 2006 | apt |
Ubuntu made more familiar for former Windows users |
| Kali Linux | 2013 | apt (Debian base) |
Penetration testing tools (offensive security) |
| Oracle Linux | 2006 | rpm, dnf |
Oracle's rebuild of RHEL |
The DistroWatch website lists hundreds of them. But in companies, remember above all two families:
DEBIAN FAMILY — .deb packages, dpkg and apt tools
Debian (1993)
└── Ubuntu (2004)
└── Linux Mint, Pop!_OS…
RED HAT FAMILY — .rpm packages, rpm and yum (RHEL 5-7) / dnf (RHEL 8+) tools
Red Hat Linux (1994-2003)
├── Fedora (2003) ──► CentOS Stream ──► RHEL
└── RHEL ──► Rocky Linux, AlmaLinux, Oracle Linux (rebuilds)
OUTSIDE THESE TWO FAMILIES
SUSE (rpm + zypper), Arch (pacman), Alpine (apk), Gentoo (emerge)
6. The package manager: the heart of a distribution
A package is an archive that contains a piece of software and information: its version, its description, and above all its dependencies (the other packages it needs).
There are two levels of tools in each family:
| Level | Role | Debian family | Red Hat family |
|---|---|---|---|
| Low level | Install a package file already present, query the local database | dpkg |
rpm |
| High level | Search the repositories, download, resolve dependencies, update the whole system | apt (and apt-get) |
yum (RHEL 5 to 7), dnf (RHEL 8 and later) |
# Debian / Ubuntu family
apt update && apt install nginx # install nginx and its dependencies
dpkg -l | grep nginx # is it installed?
# Red Hat family
dnf install nginx # (yum install nginx on RHEL 7)
rpm -qa | grep nginx # is it installed?
Dependencies are the whole point: you ask for nginx, and the tool also installs the necessary libraries, in versions tested together. Without a package manager, you would spend hours looking for them one by one.
More recently, universal formats have appeared, independent of the distribution: Snap (Canonical, 2016), Flatpak (mainly for desktop applications) and, on the server side, containers (Docker in 2013, Podman). They do not replace classic packages: they come in addition to them.
7. Fixed releases or continuous publication
| Model | Principle | Examples | For whom? |
|---|---|---|---|
| Fixed releases, long support | One major release every 2-3 years, then only fixes for years | RHEL, Rocky, Alma (10 years), Debian (≈ 5 years with LTS support), Ubuntu LTS | Production servers: stability above all |
| Fixed releases, short cycle | One release about every 6 months | Fedora, non-LTS Ubuntu | Workstations, discovering new features |
| Continuous publication (rolling) | No releases: you update all the time | Arch, openSUSE Tumbleweed | Enthusiasts, personal computers |
A bank or online shop server wants nothing to change unless someone has decided it: it runs on a fixed release with long support. That is why this course teaches Red Hat (RHEL and its clones), Debian and Ubuntu LTS.
8. How do you know which distribution you are on?
It is the first habit to develop when you arrive on an unknown server:
cat /etc/os-release # standard on all modern distributions
# ID=debian, ID=ubuntu, ID="rocky"… → the distribution
# ID_LIKE="rhel centos fedora" → the family
# VERSION_ID="12" → the version
cat /etc/debian_version # Debian family only
cat /etc/redhat-release # Red Hat family only
The /etc/os-release file was standardised around 2012 with the arrival of systemd. On very old servers (CentOS 6, for example), it may be missing: in that case, use /etc/redhat-release.
9. The lesson timeline
1992 MCC Interim Linux, SLS — S.u.S.E. founded in Germany
1993 Slackware (July) — Debian (16 August)
1994 Red Hat Linux — first SuSE distribution
1997 Debian Social Contract
1998 APT (Debian) — Mandrake
1999 Red Hat goes public
2002 Arch Linux, Gentoo
2003 Fedora Core 1; RHEL becomes Red Hat's flagship product
2004 Ubuntu 4.10 (October); CentOS
2005 openSUSE; Alpine (2005-2006)
2013 Docker: containers spread
2023 Debian 12 "bookworm"
2024 Ubuntu 24.04 LTS "noble"
2025 Debian 13 "trixie"; RHEL 10
Common pitfalls
- Copying an installation command found on the Internet without checking the family.
apt installdoes not exist on Rocky;dnfdoes not exist on Debian. Look at/etc/os-releasefirst. - Installing a
.debon a Red Hat distribution (or an.rpmon Debian). It is not the same format, nor the same libraries. Look for the package for your family. - Mixing the repositories of two releases (for example adding Debian 13 packages to a Debian 12 system). It is the best way to break a system: the dependencies no longer match.
- Thinking that Ubuntu and Debian are identical. They share
aptand.deb, but their software versions, their network tools (Netplan on Ubuntu) and their default firewall differ.
Lab
You are on Debian 12. Investigate as you would on an unknown server:
cat /etc/os-release
cat /etc/debian_version
dpkg -l | head -n 10 # the first installed packages
dpkg -l | grep -c '^ii' # how many in total?
dpkg -s coreutils # the details of a package
The tasks: identify the distribution, note its exact version, count the installed packages and read the version of the coreutils package. The lab is deliberately minimal: a full server often has several hundred packages. Then click Check.
Quiz
- Name four things that a distribution adds to the Linux kernel.
- What are the two oldest distributions still maintained, and in what year were they born?
- Which family does Ubuntu belong to? What is its package format?
- What is the difference between
rpmanddnf? - You arrive on an unknown server. What is your first command to find out which distribution it runs?
Answers
- Any of: the GNU tools and thousands of programs, an installer, a package manager, repositories, default settings, a release and security update policy.
- Slackware (July 1993) and Debian (August 1993).
- The Debian family;
.debpackages, managed withdpkgandapt. rpmis the low-level tool (installs an.rpmfile, queries the local database);dnfis the high-level tool that fetches packages from the repositories and resolves dependencies.cat /etc/os-release(and, on a very old Red Hat server,cat /etc/redhat-release).
Reference sources: official history of Debian and Social Contract (debian.org), Fedora and Red Hat documentation, Ubuntu release cycle. Original MasterLinux text.