Retour au cours

gestion de paquets sur red hat/fedora : dnf et yum

Objectifs

  • Découvrir le gestionnaire de paquets dnf utilisé par l’écosystème Red Hat (Fedora, CentOS, RHEL).
  • Comprendre la relation entre dnf et son prédécesseur, yum.
  • Apprendre les commandes dnf équivalentes à apt pour mettre à jour, installer et supprimer des logiciels.

Alors que le monde Debian/Ubuntu utilise apt, les distributions basées sur Red Hat (comme Fedora, CentOS Stream, et Red Hat Enterprise Linux (RHEL)) ont leur propre famille d’outils. Le format des paquets est .rpm.

dnf et yum : Lequel utiliser ?

  • yum (Yellowdog Updater, Modified) : C’est l’outil historique de gestion de paquets de cet écosystème. Il est encore très présent dans de nombreux tutoriels et sur d’anciennes versions de CentOS/RHEL.
  • dnf (Dandified YUM) : C’est le successeur moderne de yum. Il est plus performant, sa résolution de dépendances est meilleure, et il offre une expérience utilisateur améliorée.

Règle simple : Sur un système moderne (Fedora, CentOS/RHEL 8+), utilisez toujours dnf. La commande yum n’est souvent qu’un alias vers dnf pour assurer la compatibilité.

Les commandes fondamentales avec dnf

La logique est très similaire à celle de apt, mais les noms des commandes diffèrent légèrement. Elles nécessitent également sudo.

sudo dnf check-update

Cette commande vérifie s’il existe des mises à jour disponibles pour les paquets installés sur votre système. C’est l’équivalent de apt update.

sudo dnf upgrade

Applique toutes les mises à jour disponibles. C’est l’équivalent de apt upgrade.

Le workflow de mise à jour du système est donc :

sudo dnf upgrade
# dnf exécute automatiquement une vérification des mises à jour avant la mise à niveau.

sudo dnf install <nom-du-paquet>

Installe un nouveau logiciel et ses dépendances.

# Installer l'outil de surveillance htop
sudo dnf install htop

Pour chercher un paquet, on utilise sudo dnf search <mot-clé>.

sudo dnf remove <nom-du-paquet>

Désinstalle un paquet.

sudo dnf remove htop

sudo dnf autoremove

Supprime les dépendances qui ont été installées pour d’autres paquets mais qui ne sont plus nécessaires.

sudo dnf history

Une fonctionnalité très puissante de dnf. Elle affiche la liste de toutes les transactions (installations, suppressions) qui ont eu lieu. Chaque transaction a un ID, et vous pouvez même annuler une transaction avec sudo dnf history undo <ID>.

Tableau comparatif : apt vs. dnf

Actionapt (Debian/Ubuntu)dnf (Fedora/Red Hat)
Mettre à jour la liste des paquetsapt updatednf check-update
Mettre à jour le systèmeapt upgradednf upgrade
Installer un paquetapt install <paquet>dnf install <paquet>
Supprimer un paquetapt remove <paquet>dnf remove <paquet>
Nettoyer les dépendancesapt autoremovednf autoremove
Chercher un paquetapt-cache search <mot>dnf search <mot>

Bonnes pratiques

  • Sur un système récent, prenez l’habitude d’utiliser dnf, même si vous voyez yum dans d’anciens tutoriels.
  • Utilisez dnf history pour voir ce qui a été récemment installé ou supprimé sur votre système, c’est un excellent outil de diagnostic.

Exercices

(Ces exercices doivent être faits sur une distribution de type Fedora/CentOS/RHEL).

  1. Mise à jour :

    • Vérifiez s’il y a des mises à jour disponibles avec sudo dnf check-update.
  2. Installation :

    • Installez un paquet comme mc (Midnight Commander, un gestionnaire de fichiers en terminal).
    • sudo dnf install mc
    • Lancez mc pour vérifier que l’installation a réussi.
  3. Historique et suppression :

    • Affichez l’historique de vos actions avec sudo dnf history. Repérez l’ID de l’installation de mc.
    • Désinstallez mc avec sudo dnf remove mc.
    • (Bonus) Essayez d’annuler la suppression avec sudo dnf history undo <ID_de_la_suppression>.