D'UNIX à Linux : l'histoire qui explique tout
Quitter

Leçon 5 sur 7 · Histoire

Les distributions Linux — Slackware, Debian, Red Hat, Ubuntu et les autres

35 min Debian 12

Objectif

Comprendre ce qu'est une distribution, d'où viennent les grandes familles que vous rencontrerez en entreprise, et pourquoi la commande pour installer un logiciel change d'un serveur à l'autre.

L'essentiel

  • Le noyau seul ne suffit pas : une distribution assemble le noyau, les outils GNU, des milliers de logiciels, un installateur et un gestionnaire de paquets.
  • Les ancêtres encore vivants sont nés en 1993 : Slackware et Debian. Red Hat et SUSE suivent en 1994.
  • Deux grandes familles dominent les serveurs : Debian (paquets .deb, apt) et Red Hat (paquets .rpm, yum/dnf).
  • Ubuntu (2004) dérive de Debian ; Fedora (2003) prépare l'avenir de RHEL.
  • Une distribution publie soit des versions fixes (Debian, RHEL, Ubuntu LTS), soit en continu (rolling release : Arch).

1. Pourquoi des distributions ?

En 1992, installer Linux est une aventure : il faut récupérer le noyau sur un serveur, compiler soi-même des dizaines de programmes GNU, les copier sur des disquettes, et espérer que tout fonctionne ensemble.

Une distribution fait ce travail pour vous. Comparez avec une cuisine :

Dans une cuisine Dans une distribution
Les ingrédients (farine, œufs, sucre) Le noyau Linux, bash, coreutils, nginx, MariaDB…
La recette, testée pour que tout aille ensemble Les versions choisies et testées les unes avec les autres
Le chef et son style L'équipe de la distribution, ses choix, sa philosophie
La livraison régulière d'ingrédients frais Les mises à jour de sécurité

Concrètement, une distribution fournit :

  1. un installateur (Anaconda chez Red Hat, debian-installer, Subiquity chez Ubuntu) ;
  2. un gestionnaire de paquets pour installer, mettre à jour et supprimer les logiciels ;
  3. des dépôts : des serveurs qui hébergent des dizaines de milliers de paquets prêts à l'emploi ;
  4. des réglages par défaut : système de démarrage, pare-feu, sécurité, emplacement des fichiers ;
  5. une politique de versions et une durée de support.

2. Les pionniers (1992-1993)

Les toutes premières distributions s'appellent MCC Interim Linux (1992, université de Manchester) et SLS (Softlanding Linux System, 1992). SLS est pratique mais plein de bugs. Deux personnes décident de faire mieux.

Slackware (juillet 1993)

Patrick Volkerding, étudiant américain, corrige SLS pour son usage, puis publie le résultat : Slackware. C'est la plus ancienne distribution encore maintenue. Sa philosophie : rester proche d'UNIX, simple, sans outils « magiques ». Elle reste très peu utilisée en entreprise aujourd'hui, mais elle a formé des générations d'administrateurs.

Debian (16 août 1993)

Ian Murdock, étudiant à l'université Purdue, annonce le 16 août 1993 une distribution construite ouvertement par une communauté, et non par une seule personne. Le nom réunit Debra (sa compagne d'alors) et Ian.

Debian a trois particularités qui comptent encore :

  • Elle n'appartient à aucune entreprise. Des milliers de bénévoles la font vivre, selon un Contrat social (1997) qui promet de rester 100 % libre.
  • Ses Principes du logiciel libre selon Debian (DFSG) ont servi de base à la définition de l'open source (leçon 0.3).
  • Ses versions portent des noms de personnages de Toy Story : buzz (1.1, 1996), woody, squeeze, jessie, stretch, buster, bullseye (11), bookworm (12), trixie (13)…

Debian invente aussi un système de paquets puissant : dpkg (milieu des années 1990), puis APT (1998), qui télécharge et installe automatiquement les dépendances. À l'époque, c'est une petite révolution.

3. Les distributions commerciales (1994)

Red Hat (1994)

Marc Ewing crée Red Hat Linux en 1994 ; Bob Young s'associe avec lui pour fonder l'entreprise Red Hat (1995). Red Hat invente le format de paquets RPM (Red Hat Package Manager), puis le rend libre. Red Hat entre en Bourse en août 1999, avec un succès spectaculaire : Linux devient une affaire sérieuse aux yeux des entreprises.

En 2003, Red Hat arrête son « Red Hat Linux » grand public pour se concentrer sur RHEL (payant, pour les entreprises) et lance Fedora (gratuit, communautaire). Toute cette saga est détaillée dans la leçon 0.6.

SUSE (1992-1994)

La société allemande S.u.S.E. (Nuremberg, fondée en 1992) publie sa première distribution en 1994, d'abord basée sur Slackware. Elle devient la référence en Europe, avec son outil de configuration graphique YaST. Aujourd'hui, SUSE Linux Enterprise (SLES) concurrence RHEL dans les grandes entreprises, et openSUSE (2005) est sa version communautaire. SUSE utilise des paquets RPM avec son propre outil, zypper.

4. Ubuntu : Linux pour tout le monde (2004)

En 2004, l'entrepreneur sud-africain Mark Shuttleworth fonde l'entreprise Canonical et lance Ubuntu, un mot d'origine bantoue qui évoque l'humanité et le partage. Objectif : un Linux facile, à jour, avec un calendrier prévisible.

  • Base Debian : mêmes paquets .deb, même outil apt.
  • Une version tous les six mois, numérotée par l'année et le mois : 24.04 = avril 2024.
  • Une version LTS (Long Term Support) tous les deux ans, en avril des années paires : 20.04, 22.04, 24.04… Elle est supportée 5 ans (et plus avec l'abonnement payant Ubuntu Pro).
  • Des noms d'animaux, par ordre alphabétique depuis 2006 : jammy (22.04, Jammy Jellyfish), noble (24.04, Noble Numbat)…

Ubuntu est devenu le Linux le plus répandu dans le cloud et sur les postes de développeurs. Il a lui-même des dérivés, comme Linux Mint (2006).

5. Les autres familles à connaître

Distribution Année Paquets Idée principale
Gentoo 2002 Compilés depuis les sources (emerge) Tout optimiser pour sa machine
Arch Linux 2002 pacman Simple, minimaliste, rolling release ; un wiki de référence pour tous les Linux
Alpine Linux 2005-2006 apk Minuscule et sûr (musl, BusyBox) : très utilisé comme base d'images de conteneurs
Linux Mint 2006 apt Ubuntu rendu plus familier pour les anciens utilisateurs de Windows
Kali Linux 2013 apt (base Debian) Outils de tests d'intrusion (sécurité offensive)
Oracle Linux 2006 rpm, dnf Recompilation de RHEL par Oracle

Le site DistroWatch en recense des centaines. Mais en entreprise, retenez surtout deux familles :

FAMILLE DEBIAN — paquets .deb, outils dpkg et apt
  Debian (1993)
   └── Ubuntu (2004)
         └── Linux Mint, Pop!_OS…

FAMILLE RED HAT — paquets .rpm, outils rpm et yum (RHEL 5-7) / dnf (RHEL 8+)
  Red Hat Linux (1994-2003)
   ├── Fedora (2003) ──► CentOS Stream ──► RHEL
   └── RHEL ──► Rocky Linux, AlmaLinux, Oracle Linux (recompilations)

HORS DE CES DEUX FAMILLES
  SUSE (rpm + zypper), Arch (pacman), Alpine (apk), Gentoo (emerge)

6. Le gestionnaire de paquets : le cœur d'une distribution

Un paquet est une archive qui contient un logiciel et des informations : sa version, sa description, et surtout ses dépendances (les autres paquets dont il a besoin).

Il y a deux étages d'outils dans chaque famille :

Étage Rôle Famille Debian Famille Red Hat
Bas niveau Installer un fichier de paquet déjà présent, interroger la base locale dpkg rpm
Haut niveau Chercher dans les dépôts, télécharger, résoudre les dépendances, mettre à jour tout le système apt (et apt-get) yum (RHEL 5 à 7), dnf (RHEL 8 et suivants)
# Famille Debian / Ubuntu
apt update && apt install nginx     # installer nginx et ses dépendances
dpkg -l | grep nginx                # est-il installé ?

# Famille Red Hat
dnf install nginx                   # (yum install nginx sur RHEL 7)
rpm -qa | grep nginx                # est-il installé ?

Les dépendances, c'est tout l'intérêt : vous demandez nginx, l'outil installe aussi les bibliothèques nécessaires, dans des versions testées ensemble. Sans gestionnaire de paquets, vous passeriez des heures à les chercher une par une.

Plus récemment sont apparus des formats universels, indépendants de la distribution : Snap (Canonical, 2016), Flatpak (surtout pour les applications de bureau) et, côté serveur, les conteneurs (Docker en 2013, Podman). Ils ne remplacent pas les paquets classiques : ils s'ajoutent à eux.

7. Versions fixes ou publication continue

Modèle Principe Exemples Pour qui ?
Versions fixes, support long Une version majeure tous les 2-3 ans, puis seulement des corrections pendant des années RHEL, Rocky, Alma (10 ans), Debian (≈ 5 ans avec le support LTS), Ubuntu LTS Serveurs de production : stabilité avant tout
Versions fixes, cycle court Une version tous les 6 mois environ Fedora, Ubuntu non-LTS Postes de travail, découverte des nouveautés
Publication continue (rolling) Pas de version : on met à jour en permanence Arch, openSUSE Tumbleweed Passionnés, postes personnels

Un serveur de banque ou de boutique en ligne veut que rien ne change sans qu'on l'ait décidé : il tourne sur une version fixe à support long. C'est pourquoi ce cours enseigne Red Hat (RHEL et ses clones), Debian et Ubuntu LTS.

8. Comment savoir sur quelle distribution vous êtes ?

C'est le premier réflexe à prendre en arrivant sur un serveur inconnu :

cat /etc/os-release          # standard sur toutes les distributions modernes
#   ID=debian, ID=ubuntu, ID="rocky"…     → la distribution
#   ID_LIKE="rhel centos fedora"           → la famille
#   VERSION_ID="12"                        → la version
cat /etc/debian_version      # famille Debian seulement
cat /etc/redhat-release      # famille Red Hat seulement

Le fichier /etc/os-release a été standardisé vers 2012 avec l'arrivée de systemd. Sur de très vieux serveurs (CentOS 6, par exemple), il peut manquer : utilisez alors /etc/redhat-release.

9. La frise de la leçon

1992  MCC Interim Linux, SLS — S.u.S.E. fondée en Allemagne
1993  Slackware (juillet) — Debian (16 août)
1994  Red Hat Linux — première distribution SuSE
1997  Contrat social Debian
1998  APT (Debian) — Mandrake
1999  Entrée en Bourse de Red Hat
2002  Arch Linux, Gentoo
2003  Fedora Core 1 ; RHEL devient le produit phare de Red Hat
2004  Ubuntu 4.10 (octobre) ; CentOS
2005  openSUSE ; Alpine (2005-2006)
2013  Docker : les conteneurs se répandent
2023  Debian 12 « bookworm »
2024  Ubuntu 24.04 LTS « noble »
2025  Debian 13 « trixie » ; RHEL 10

Pièges fréquents

  • Copier une commande d'installation trouvée sur Internet sans vérifier la famille. apt install n'existe pas sur Rocky ; dnf n'existe pas sur Debian. Regardez /etc/os-release d'abord.
  • Installer un .deb sur une distribution Red Hat (ou un .rpm sur Debian). Ce n'est pas le même format ni les mêmes bibliothèques. Cherchez le paquet de votre famille.
  • Mélanger les dépôts de deux versions (par exemple ajouter des paquets Debian 13 sur un Debian 12). C'est la meilleure façon de casser un système : les dépendances ne correspondent plus.
  • Penser qu'Ubuntu et Debian sont identiques. Ils partagent apt et .deb, mais leurs versions de logiciels, leurs outils réseau (Netplan sur Ubuntu) et leur pare-feu par défaut diffèrent.

Lab

Vous êtes sur Debian 12. Menez l'enquête comme sur un serveur inconnu :

cat /etc/os-release
cat /etc/debian_version
dpkg -l | head -n 10            # les premiers paquets installés
dpkg -l | grep -c '^ii'         # combien en tout ?
dpkg -s coreutils               # la fiche d'un paquet

Les tâches : identifier la distribution, relever sa version précise, compter les paquets installés et lire la version du paquet coreutils. Le lab est volontairement minimal : un serveur complet compte souvent plusieurs centaines de paquets. Cliquez ensuite sur Vérifier.


Quiz

  1. Citez quatre éléments qu'une distribution ajoute au noyau Linux.
  2. Quelles sont les deux plus anciennes distributions encore maintenues, et en quelle année sont-elles nées ?
  3. À quelle famille appartient Ubuntu ? Quel est son format de paquets ?
  4. Quelle est la différence entre rpm et dnf ?
  5. Vous arrivez sur un serveur inconnu. Quelle est votre première commande pour savoir quelle distribution il exécute ?
Réponses
  1. Au choix : les outils GNU et des milliers de logiciels, un installateur, un gestionnaire de paquets, des dépôts, des réglages par défaut, une politique de versions et de mises à jour de sécurité.
  2. Slackware (juillet 1993) et Debian (août 1993).
  3. À la famille Debian ; paquets .deb, gérés avec dpkg et apt.
  4. rpm est l'outil de bas niveau (installe un fichier .rpm, interroge la base locale) ; dnf est l'outil de haut niveau qui va chercher les paquets dans les dépôts et résout les dépendances.
  5. cat /etc/os-release (et, sur un très vieux serveur Red Hat, cat /etc/redhat-release).

Sources de référence : histoire officielle de Debian et Contrat social (debian.org), documentation Fedora et Red Hat, cycle de publication Ubuntu. Texte original MasterLinux.

Exercices pratiques

À réaliser sur Debian 12

Le terminal en ligne ouvre bientôt. En attendant, réalisez ces tâches sur votre machine Linux, une machine virtuelle ou WSL.

  1. Enregistrez la ligne qui commence par ID= dans /etc/os-release dans le fichier /root/id.txt
    Afficher un indiceLe symbole ^ veut dire « en début de ligne » : grep '^ID=' /etc/os-release > /root/id.txt
    Voir la solution
    grep '^ID=' /etc/os-release > /root/id.txt

    Vérification : grep -qx 'ID=debian' /root/id.txt

  2. Debian garde son numéro de version dans un fichier à part, /etc/debian_version. Copiez-le dans /root/version.txt
    Afficher un indicecat /etc/debian_version > /root/version.txt
    Voir la solution
    cat /etc/debian_version > /root/version.txt

    Vérification : grep -q '^12' /root/version.txt

  3. Comptez les paquets installés : dpkg -l affiche une ligne commençant par ii pour chacun. Enregistrez leur nombre dans /root/nb-paquets.txt
    Afficher un indicegrep -c compte les lignes qui correspondent : dpkg -l | grep -c '^ii' > /root/nb-paquets.txt
    Voir la solution
    dpkg -l | grep -c '^ii' > /root/nb-paquets.txt

    Vérification : grep -qx "$(dpkg -l | grep -c ^ii)" /root/nb-paquets.txt

  4. Interrogez le gestionnaire de paquets sur le paquet coreutils (dpkg -s coreutils) et enregistrez seulement sa ligne Version dans /root/coreutils.txt
    Afficher un indicedpkg -s coreutils | grep '^Version' > /root/coreutils.txt
    Voir la solution
    dpkg -s coreutils | grep '^Version' > /root/coreutils.txt

    Vérification : grep -q '^Version: ' /root/coreutils.txt

Références officielles consultées : Debian — « A Brief History of Debian » et Debian Social Contract (debian.org) ; Fedora Project et Red Hat — documentation officielle ; Ubuntu — Release cycle (ubuntu.com). Texte original MasterLinux.