Skip to content

Gestionnaires de paquets

Sommaire

Un gestionnaires de paquets est un outil essentiel sous Linux pour installer, mettre à jour et supprimer des logiciels de manière simple et sécurisée.

Dans ce cours, nous allons explorer deux gestionnaires de paquets populaires :

  • apt-get (Debian / Ubuntu et dérivés) ;
  • pacman (Arch Linux et dérivés comme Manjaro).

Rôle d’un gestionnaire de paquets

Sous Linux, un logiciel n’est pas (en général) installé via un exécutable téléchargé sur un site web.

On utilise un gestionnaire de paquets qui se charge de :

  • télécharger les paquets depuis des dépôts (repositories) ;
  • vérifier les dépendances (autres paquets nécessaires) ;
  • installer ou mettre à jour les fichiers au bon endroit (/usr/bin, /usr/lib, etc.) ;
  • tenir à jour une base des paquets installés.

Avantages :

  • sécurité (paquets signés, provenant de dépôts officiels) ;
  • simplicité : une seule commande pour installer un logiciel et ses dépendances ;
  • mises à jour centralisées : on peut mettre à jour tout le système en une seule commande.

apt-get (Debian, Ubuntu, etc.)

Présentation

apt-get est une commande pour gérer les paquets sous Debian et ses dérivés (Ubuntu, Linux Mint, etc.).

Elle permet :

  • d’installer des paquets ;
  • de mettre à jour les paquets installés ;
  • de supprimer des paquets.

Syntaxe générale :

bash
apt-get {commande} <paquet>

Exemple (en root ou avec sudo) :

bash
sudo apt-get install figlet

apt-get install

Installe un ou plusieurs paquets et leurs dépendances.

bash
sudo apt-get install figlet
sudo apt-get install vim htop git

Remarques :

  • il faut connaître le nom du paquet (la recherche se fait souvent via un moteur de recherche ou apt search) ;
  • on peut installer plusieurs paquets en les écrivant à la suite.

apt-get update

Met à jour la liste des paquets disponibles dans les dépôts, sans installer de nouveaux paquets.

bash
sudo apt-get update

Pourquoi c’est important ?

  • sans update, la machine ne connaît pas les dernières versions disponibles ;
  • la bonne pratique : toujours faire update régulièrement, et avant d’installer ou de mettre à jour.

apt-get upgrade

Met à jour tous les paquets installés vers les dernières versions disponibles (en respectant les dépendances).

bash
sudo apt-get upgrade
  • Télécharge les nouvelles versions des paquets installés.
  • Ne désinstalle pas de paquets (contrairement à dist-upgrade / full-upgrade qui peuvent modifier les dépendances plus agressivement).

apt-get remove

Supprime un paquet installé, mais laisse ses fichiers de configuration.

bash
sudo apt-get remove figlet

Le logiciel n’est plus utilisable, mais certains fichiers dans /etc (ou ailleurs) peuvent rester.

apt-get purge

Supprime un paquet et ses fichiers de configuration.

bash
sudo apt-get purge figlet

C’est plus radical que remove : on revient presque comme si le paquet n’avait jamais été installé.


pacman (Arch Linux)

Présentation

pacman est le gestionnaire de paquets d’Arch Linux (et de distributions dérivées comme Manjaro).

Il sert, comme apt-get :

  • à installer des paquets ;
  • à mettre à jour le système ;
  • à supprimer des paquets.

Syntaxe générale :

bash
pacman [options] <paquet>

Exemple :

bash
sudo pacman -S figlet

Installer des paquets : pacman -S

Installe un ou plusieurs paquets et leurs dépendances.

bash
sudo pacman -S figlet
sudo pacman -S vim htop git

C’est l’équivalent de :

bash
sudo apt-get install ...

Attention : pacman -S tout seul ne met pas à jour la base de données des paquets avant l’installation.

Mettre à jour la base + installer : pacman -Sy

La combinaison -Sy signifie :

  • -S : installation (operation Sync)
  • -y : rafraîchir la base de données des paquets (équivalent apt-get update).
bash
sudo pacman -Sy figlet

Cela revient à faire :

  • apt-get update puis
  • apt-get install figlet

en une seule commande.

Mettre à jour le système : pacman -Su et pacman -Syu

  • pacman -Su : met à jour les paquets installés vers les dernières versions (équivalent à apt-get upgrade).
  • pacman -Syu : met à jour la base de données (-y) et les paquets installés (-u).
bash
# Mise à jour complète (commande typique sur Arch)
sudo pacman -Syu

Arch étant une rolling release (les mises à jour sont continues et fréquentes), il est important de faire cette commande régulièrement.

Supprimer des paquets : pacman -R et variantes

pacman -R supprime un paquet, sans forcément supprimer toutes les dépendances ou fichiers liés.

bash
sudo pacman -R figlet

C’est l’équivalent de :

bash
sudo apt-get remove figlet
  • pacman -Rs : supprime le paquet et les dépendances qui ne sont plus utilisées.

Supprimer les paquets orphelins

Un paquet est orphelin quand il n’est plus requis par aucun autre. Pour les identifier :

bash
pacman -Qdt

Et pour les supprimer :

bash
sudo pacman -Rns $(pacman -Qdtq)

Sauvegarder la base de données des paquets

bash
pacman -Qqe > packages.txt

Nettoyer le cache de Pacman

À chaque installation, Pacman garde une copie des paquets téléchargés dans /var/cache/pacman/pkg/. Ça peut vite prendre de la place.

Pour supprimer les anciennes versions des paquets installés :

bash
sudo pacman -Sc

Pour nettoyer tous les packages, à l'exception des 3 versions les plus récentes, exécutez la commande suivante :

bash
$ sudo paccache -r

Tableau récapitulatif apt-get / pacman

ActionDebian/Ubuntu (apt-get)Arch (pacman)
Mettre à jour la liste des paquetsapt-get updatepacman -Sy (ou -Syu)
Mettre à jour les paquets installésapt-get upgradepacman -Su / -Syu
Installer un paquetapt-get install nompacman -S nom
Installer plusieurs paquetsapt-get install a b cpacman -S a b c
Supprimer un paquetapt-get remove nompacman -R nom
Supprimer un paquet + confapt-get purge nompacman -Rns nom (≈)

Bonnes pratiques et erreurs fréquentes

  • Toujours mettre à jour la base de paquets avant de grandes mises à jour.

    • Debian/Ubuntu : sudo apt-get update puis sudo apt-get upgrade.
    • Arch : sudo pacman -Syu.
  • Ne jamais interrompre une mise à jour en cours (risque de système incohérent).

  • Vérifier les messages d’erreur : conflits de fichiers, dépendances cassées, etc.

  • Utiliser les dépôts officiels autant que possible ;

    • les dépôts non officiels/AUR apportent des paquets, mais ajoutent aussi des risques.
    • AUR = Arch User Repository, une source communautaire de paquets non officiels.

.