GREY-X // LINUX PACKAGE LAB

APT // DNF // PACMAN // ZYPPER

Quand on découvre Linux, une question revient rapidement :

Pourquoi apt install sur Debian, dnf install sur Fedora et pacman -S sur Arch ?

Les distributions Linux n’utilisent pas toutes le même système de gestion des logiciels.

Pourtant, l’objectif reste similaire :

RECHERCHER
INSTALLER
METTRE À JOUR
SUPPRIMER

La différence se trouve dans la manière dont chaque distribution organise ses paquets, ses dépôts, ses dépendances et ses mises à jour.


01 // Les principaux gestionnaires Link to heading

Distribution Gestionnaire Format
Debian / Ubuntu / Kali APT .deb
Fedora / RHEL DNF .rpm
Arch Linux Pacman .pkg.tar.zst
openSUSE Zypper .rpm

Attention : RPM est un format et un système de gestion bas niveau, tandis que DNF et Zypper sont des gestionnaires de paquets de plus haut niveau.


02 // Debian, Ubuntu, Kali → APT Link to heading

Sur Debian et ses dérivées, le gestionnaire le plus connu est APT.

Installer Nmap :

sudo apt install nmap

Rechercher :

apt search nmap

Mettre à jour les dépôts :

sudo apt update

Mettre à jour les paquets :

sudo apt upgrade

Pourquoi APT est populaire ? Link to heading

APT est particulièrement apprécié pour :

  • sa maturité ;
  • sa stabilité ;
  • sa gestion des dépendances ;
  • son énorme écosystème ;
  • sa simplicité.

Exemple concret Link to heading

Tu veux installer Wireshark sur une machine Debian :

sudo apt update
sudo apt install wireshark

APT va rechercher le paquet dans les dépôts configurés, déterminer les dépendances nécessaires et les installer.

Philosophie Link to heading

Debian met traditionnellement l’accent sur :

stabilité + prévisibilité + gestion rigoureuse des paquets.

C’est notamment une raison pour laquelle Debian est très utilisé sur les serveurs.


03 // Fedora → DNF Link to heading

Fedora utilise DNF.

Installer Nmap :

sudo dnf install nmap

Rechercher :

dnf search nmap

Mettre à jour :

sudo dnf upgrade

Afficher les informations :

dnf info nmap

Exemple concret Link to heading

Installer Git :

sudo dnf install git

DNF va gérer les dépendances et installer les composants nécessaires.

Avantages Link to heading

DNF est apprécié pour :

  • sa résolution des dépendances ;
  • son intégration avec l’écosystème RPM ;
  • sa gestion des dépôts ;
  • ses informations détaillées sur les paquets.

Philosophie Link to heading

Fedora cherche généralement à proposer un environnement :

moderne + innovant + proche des technologies qui arrivent dans l’écosystème Red Hat.


04 // Arch Linux → Pacman Link to heading

Arch adopte une philosophie différente.

Le gestionnaire principal est :

pacman

Installer Nmap :

sudo pacman -S nmap

Rechercher :

pacman -Ss nmap

Mettre à jour le système :

sudo pacman -Syu

Supprimer :

sudo pacman -R nmap

Exemple concret Link to heading

Tu installes Git :

sudo pacman -S git

C’est extrêmement direct.

L’avantage de Pacman Link to heading

Pacman est connu pour être :

  • rapide ;
  • simple ;
  • efficace ;
  • intégré à l’approche Arch.

Arch fournit également l’AUR, qui donne accès à énormément de logiciels et de recettes maintenues par la communauté.

Philosophie Link to heading

Arch met fortement l’accent sur :

simplicité + contrôle + personnalisation.

L’utilisateur construit davantage son environnement au lieu de recevoir un système très préconfiguré.


05 // openSUSE → Zypper Link to heading

openSUSE utilise principalement Zypper.

Installer Nmap :

sudo zypper install nmap

Rechercher :

zypper search nmap

Mettre à jour les dépôts :

sudo zypper refresh

Mettre à jour le système :

sudo zypper update

Exemple concret Link to heading

Installer Git :

sudo zypper install git

Zypper va gérer les dépendances et les dépôts configurés.

Avantages Link to heading

Zypper est apprécié pour :

  • sa gestion des dépendances ;
  • son intégration avec RPM ;
  • sa gestion des dépôts ;
  • son intégration à l’écosystème openSUSE.

Philosophie Link to heading

openSUSE met notamment l’accent sur :

administration + intégration + outils de configuration.

Un exemple important est YaST, qui permet d’administrer de nombreux composants du système.


06 // Le même objectif, quatre commandes Link to heading

Imaginons que tu veuilles installer Nmap.

Sur Debian :

sudo apt install nmap

Sur Fedora :

sudo dnf install nmap

Sur Arch :

sudo pacman -S nmap

Sur openSUSE :

sudo zypper install nmap

Même résultat :

              INSTALL NMAP
       ┌───────────┼───────────┐
       │           │           │
      APT         DNF       PACMAN      ZYPPER
       │           │           │           │
      .deb        .rpm    pkg.tar.zst     .rpm

La commande change.

Le concept reste le même.


07 // Pourquoi ne pas utiliser un seul gestionnaire ? Link to heading

Parce que Linux n’est pas un seul système.

C’est un écosystème composé de nombreuses distributions ayant des objectifs différents.

Par exemple :

Debian
STABILITÉ

Fedora
INNOVATION

Arch
CONTRÔLE

openSUSE
ADMINISTRATION

Ce sont des simplifications, mais elles permettent de comprendre les grandes orientations.


08 // Et les dépendances ? Link to heading

Imagine que tu installes une application appelée :

Application A

Elle nécessite :

Bibliothèque B
Bibliothèque C
Bibliothèque D

Le gestionnaire de paquets peut résoudre cette chaîne :

Application A
 ┌────┼────┐
 ↓    ↓    ↓
 B    C    D

C’est l’un des grands avantages d’un gestionnaire de paquets.

Sans lui, il faudrait télécharger et installer manuellement chaque composant.


09 // Et les mises à jour ? Link to heading

Un autre avantage majeur est la centralisation.

Au lieu de rechercher manuellement chaque logiciel :

Firefox
Git
Python
OpenSSL
Nmap
...

le gestionnaire peut utiliser les dépôts configurés pour récupérer les versions disponibles.

Par exemple :

sudo apt update
sudo apt upgrade

ou :

sudo dnf upgrade

ou :

sudo pacman -Syu

ou :

sudo zypper update

Une seule logique :

maintenir le système à jour.


10 // Le plus important pour la cybersécurité Link to heading

Lorsqu’on travaille en cybersécurité, il est fréquent de passer d’une distribution à une autre.

Tu peux rencontrer :

Kali
Debian
Ubuntu
Fedora
Arch
openSUSE

Ne mémorise donc pas uniquement :

apt
dnf
pacman
zypper

Comprends plutôt la logique :

REPOSITORY
PACKAGE
DEPENDENCIES
INSTALLATION
UPDATE

Une fois cette logique comprise, changer de distribution devient beaucoup plus facile.


11 // Le bon outil dépend du contexte Link to heading

Il n’existe pas forcément un gestionnaire de paquets « meilleur » dans l’absolu.

Le choix dépend surtout de la distribution et de ses objectifs.

┌────────────┬───────────────┬─────────────────────┐
│ Distribution│ Gestionnaire  │ Philosophie         │
├────────────┼───────────────┼─────────────────────┤
│ Debian      │ APT           │ stabilité           │
│ Fedora      │ DNF           │ modernité           │
│ Arch        │ Pacman        │ contrôle            │
│ openSUSE    │ Zypper        │ administration      │
└────────────┴───────────────┴─────────────────────┘

Ce tableau est volontairement simplifié : chaque distribution possède bien plus de nuances que son gestionnaire de paquets.


12 // À retenir Link to heading

Un gestionnaire de paquets permet principalement de :

  • rechercher des logiciels ;
  • installer des logiciels ;
  • gérer les dépendances ;
  • mettre à jour le système ;
  • supprimer des logiciels ;
  • gérer les dépôts.

Les commandes changent :

APT       → Debian / Ubuntu / Kali
DNF       → Fedora
Pacman    → Arch
Zypper    → openSUSE

Mais derrière ces commandes se trouve le même principe :

Gérer proprement les logiciels et leurs dépendances.

┌──────────────────────────────────────┐
│              GREY-X                  │
│                                      │
│       LINUX PACKAGE MANAGERS         │
│                                      │
│   APT → DNF → PACMAN → ZYPPER        │
│                                      │
│      UNDERSTAND THE DIFFERENCE       │
└──────────────────────────────────────┘

Connaître plusieurs gestionnaires de paquets, c’est surtout apprendre à s’adapter à plusieurs environnements Linux.