Cet article fait partie de notre guide: Les bases de l’administration des serveurs Linux

Administration Linux : savoir utiliser les gestionnaires de paquets

Il existe de nombreux gestionnaires de paquets pour les distributions Linux. Les administrateurs de tels systèmes doivent les maîtriser pour installer des logiciels et accomplir des tâches de maintenance.

Les gestionnaires de paquets sont des outils essentiels pour les utilisateurs de Linux. Il est utile de se familiariser avec chacun de ces dispositifs, car la plupart des administrateurs Linux sont régulièrement confrontés à une grande variété de distributions.

Les gestionnaires de paquets fournissent des informations sur les paquets de logiciels, notamment la source, la date d’installation, les descriptions, les dépendances, etc. Les gestionnaires de paquets aident les utilisateurs et les administrateurs de Linux à installer, mettre à jour et supprimer des applications rapidement. Leurs commandes sont généralement intuitives (par exemple, apt install apache2 installe le serveur web Apache) et la plupart ont des versions graphiques.

Vous devez comprendre et utiliser le gestionnaire de paquets que votre distribution préfère. Les trois choix les plus courants sont Dandified Yum (DNF), Advanced Package Tool (APT) et Zypper. DNF fonctionne avec Red Hat Enterprise Linux (RHEL), Fedora, AlmaLinux et Rocky. APT est destiné à Debian, Ubuntu et Linux Mint, et vous pouvez utiliser Zypper avec OpenSUSE et SUSE Linux Enterprise Server (SLES). Mais vous pouvez aussi rencontrer Flatpak, Snap, Pacman, Portage et d’autres.

Pourquoi y a-t-il autant de gestionnaires de paquets ?

Linux offre une grande variété de gestionnaires de paquets logiciels par rapport aux écosystèmes relativement homogènes de macOS et de Windows. Il y a quelques raisons pour lesquelles il y a tant d’options alors qu’elles font toutes des choses similaires.

Certains gestionnaires de paquets ont été créés avant l’adoption de normes générales pour Linux et sont désormais intégrés à une famille de distribution, de sorte qu’il ne serait pas pratique d’en changer. Les différentes distributions ont également des philosophies de conception et des exigences différentes, ce qui nécessite des fonctionnalités de gestion logicielle spécifiques. De plus, dans le monde Linux, il n’existe pas de norme universelle de gestion des logiciels.

La gestion des dépendances est un élément clé des gestionnaires de paquets modernes. Lorsque vous essayez d’installer un paquet, le gestionnaire de paquets vérifie si des applications nécessaires sont absentes du système. Il peut ajouter automatiquement ces dépendances au processus d’installation global que vous avez lancé.

Les gestionnaires de paquets courants

Les deux gestionnaires de paquets les plus courants sont le gestionnaire de paquets RPM et les outils basés sur APT. Vous devrez apprendre l’un de ces utilitaires si vous travaillez avec RHEL, Fedora, Ubuntu, Mint ou Debian. Vous utiliserez des gestionnaires de paquets différents si vous choisissez OpenSUSE, Gentoo, Arch ou d’autres distributions.

Pour utiliser le gestionnaire de paquets de votre système, vous aurez très probablement besoin des privilèges de l’administrateur (root) ou d’une délégation de droits. La commande sudo vous permet d’exécuter des privilèges délégués sans avoir les pleins pouvoirs de l’administrateur.

Les lignes suivantes prennent l’exemple de l’éditeur de texte Vim, bien que son nom réel puisse varier en fonction du gestionnaire de paquets.

RPM utilise plusieurs utilitaires différents pour gérer les logiciels, notamment YUM et DNF. Ces logiciels portent l’extension de fichier RPM. Chaque gestionnaire de paquets possède son propre ensemble de commandes, bien qu’elles soient toutes similaires :

  • DNF utilise la commande dnf et une série de sous-commandes.
  • YUM utilise la commande yum et diverses sous-commandes.
  • RPM utilise la commande rpm avec des drapeaux de ligne de commande Linux plus traditionnels, tels que -i ou -e.

Les distributions courantes qui utilisent des gestionnaires de paquets basés sur RPM comprennent RHEL, Fedora Linux, Rocky Linux et AlmaLinux. Il existe plusieurs commandes dnf courantes :

  • dnf update met à jour les paquets installés.
  • dnf install vim installe le paquetage spécifié.
  • dnf update vim met à jour tous les paquets installés vers leur dernière version.
  • dnf remove vim supprime le paquetage spécifié.
  • dnf info vim affiche des informations détaillées sur le paquetage, y compris la version.

Zypper s’utilise avec les distributions basées sur SUSE Linux. Il s’appuie sur le format de paquetage RPM standard, mais n’utilise pas les commandes rpm, yum ou dnf. Zypper fonctionne à partir de la ligne de commande et est intégré à l’outil d’administration graphique YaST de SUSE.

Les distributions courantes utilisant Zypper comprennent openSUSE et SUSE Linux Enterprise Server. Il existe plusieurs commandes Zypper courantes :

  • zypper install vim installe le paquetage spécifié.
  • zypper remove vim supprime le paquetage spécifié.
  • zypper update met à jour tous les paquets installés vers leur dernière version.
  • zypper info vim affiche des informations détaillées sur le paquetage, y compris sa version.

APT gère les logiciels des distributions Linux dérivées de Debian, comme l’installation, la mise à jour et la suppression des applications. Les logiciels empaquetés pour l’APT ont l’extension de fichier .deb. La commande principale d’APT est apt, suivie d’une ou plusieurs sous-commandes.

Les distributions courantes qui s’appuient sur APT sont Debian Linux, Ubuntu Linux et Linux Mint. Il existe plusieurs commandes apt courantes pour la gestion des logiciels :

  • apt update rafraîchit les listes de paquets des dépôts.
  • apt upgrade met à jour tous les paquets installés vers leur dernière version.
  • apt install vim installe le paquetage spécifié.
  • apt remove vim supprime le paquetage spécifié.
  • apt show vim affiche des informations détaillées sur les paquets, y compris leur version.

Flatpak exécute chaque application dans un environnement « sandbox » isolé (un « bac à sable ») et offre des dépendances également isolées. Cette méthode protège le système et les autres programmes contre les logiciels malveillants. Elle est indépendante de la distribution et offre un moyen centralisé de gérer les logiciels sur plusieurs distributions Linux.

Installez Flatpak sur votre système et dirigez-le vers le dépôt Flatpak. Utilisez la commande apt install flatpack pour installer Flatpak sur une distribution basée sur Debian.

Une fois Flatpak installé et le dépôt configuré, gérez les logiciels à l’aide de la commande flatpak. Il existe plusieurs commandes Flatpak courantes :

  • flatpak install vim installe l’application spécifiée. Les versions récentes de Flatpak trouveront toutes seules le dépôt depuis lequel télécharger grâce au nom de l’application. Sur les versions plus anciennes, il faudra préciser l’adresse du dépôt.
  • flatpak uninstall vim supprime l’application spécifiée.
  • flatpak update met à jour les applications Flatpak installées.
  • flatpak list affiche toutes les applications Flatpak installées.

Snap dispose d’un outil snapd qui fournit des environnements logiciels isolés conçus pour sécuriser le système et les applications et en faciliter la maintenance. Il gère les dépendances, les bibliothèques et les autres logiciels de support par application afin d’éviter les conflits.

Installez Snap sur votre distribution Linux à l’aide de la commande apt install snapd. Remplacez la commande par dnf pour les distributions orientées Red Hat.

Les versions modernes d’Ubuntu ont généralement snapd installé. Les sous-commandes courantes de Snap sont les suivantes :

  • snap install vim installe l’application spécifiée.
  • snap remove vim supprime l’application spécifiée.
  • snap find {application} recherche des applications spécifiques dans le Snap Store à partir de la ligne de commande.

Pacman vient avec la distribution Arch Linux. Celle-ci s’adresse aux utilisateurs plus expérimentés qui souhaitent en savoir plus sur le fonctionnement interne d’un système Linux.

Le gestionnaire de paquets d’Arch est Pacman, et il suit le calendrier de publication de la distribution pour maintenir le système à jour. Pacman est un gestionnaire de paquets rapide et efficace si on le compare à APT et DNF. Les distributions Manjaro et Endeavor sont basées sur Arch Linux, tout comme BlackArch, une plateforme de test de pénétration bien connue.

Pacman utilise des drapeaux plutôt que des mots descriptifs. Alors que DNF dispose d’une commande d’installation dnf, Pacman utilise pacman -S pour déployer des logiciels. Il existe plusieurs commandes Pacman courantes :

  • pacman -Syy rafraîchit la liste des paquets à partir des dépôts.
  • pacman -Syu met à jour tous les paquets installés vers leur dernière version.
  • pacman -S vim installe l’application spécifiée.
  • pacman -Rs vim supprime l’application spécifiée et ses dépendances.
  • pacman -Si vim affiche des informations détaillées sur les paquets, y compris leur version.

Portage est lié à la distribution Linux Gentoo, laquelle met l’accent sur le contrôle granulaire de votre système. Gentoo peut être intimidant pour les nouveaux utilisateurs de Linux qui doivent compiler le système d’exploitation à partir du code source dans le cadre du processus d’installation. La compilation du système d’exploitation vous permet de contrôler tous les aspects de votre déploiement.

Comme le système d’exploitation, les logiciels Gentoo sont compilés lors de l’installation, ce qui permet aux utilisateurs de les contrôler et de les personnaliser. Cette approche diffère significativement des paquets précompilés tels que ceux utilisés avec DNF ou APT.

La principale commande de Portage pour installer, mettre à jour et désinstaller des applications est emerge. Il existe plusieurs commandes de gestion des logiciels Portage :

  • emerge vim installe l’application spécifiée.
  • emerge -auDN @world met à jour tous les paquets installés vers leur dernière version.
  • emerge -C vim supprime l’application spécifiée.
  • emaint facilite les tâches de maintenance.
  • emaint -a sync rafraîchit la liste des paquets à partir des dépôts.
  • equery rassemble des informations sur les logiciels.
  • equery list vim affiche des informations détaillées sur les paquets, y compris la version.

Mise à jour des logiciels et autres tâches de maintenance

La maintenance des logiciels est un élément essentiel du travail d’un administrateur système. Les gestionnaires de paquets vous aident à comprendre quelle version de logiciel est installée et si elle doit être mise à jour.

Les gestionnaires de paquets facilitent la mise à jour des logiciels et le contrôle des versions. Des commandes telles que dnf update httpd ou apt upgrade apache2 permettent aux utilisateurs de Linux de conserver les dernières versions sur leurs systèmes.

Les dépôts, ou « repos » (pour « repositories », en anglais) sont un autre moyen par lequel les gestionnaires de paquets aident à contrôler les logiciels. Les dépôts de logiciels sont des zones de stockage désignées que les gestionnaires de paquets vérifient lorsqu’ils installent ou mettent à jour des logiciels.

La plupart des distributions pointent vers les dépôts du fournisseur, mais vous pouvez configurer n’importe quel dépôt. Une approche courante consiste à ne faire pointer le gestionnaire de paquets que sur un dépôt géré en interne, avec un contrôle minutieux des versions de logiciels disponibles. Ce contrôle permet d’éviter les dérives de version et les mises à jour non planifiées.

Pour approfondir sur Linux

Close