Appearance
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 figletapt-get install
Installe un ou plusieurs paquets et leurs dépendances.
bash
sudo apt-get install figlet
sudo apt-get install vim htop gitRemarques :
- 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 updatePourquoi c’est important ?
- sans
update, la machine ne connaît pas les dernières versions disponibles ; - la bonne pratique : toujours faire
updateré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-upgradequi 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 figletLe 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 figletC’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 figletInstaller des paquets : pacman -S
Installe un ou plusieurs paquets et leurs dépendances.
bash
sudo pacman -S figlet
sudo pacman -S vim htop gitC’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 (équivalentapt-get update).
bash
sudo pacman -Sy figletCela revient à faire :
apt-get updatepuisapt-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 -SyuArch é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 figletC’est l’équivalent de :
bash
sudo apt-get remove figletpacman -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 -QdtEt pour les supprimer :
bash
sudo pacman -Rns $(pacman -Qdtq)Sauvegarder la base de données des paquets
bash
pacman -Qqe > packages.txtNettoyer 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 -ScPour nettoyer tous les packages, à l'exception des 3 versions les plus récentes, exécutez la commande suivante :
bash
$ sudo paccache -rTableau récapitulatif apt-get / pacman
| Action | Debian/Ubuntu (apt-get) | Arch (pacman) |
|---|---|---|
| Mettre à jour la liste des paquets | apt-get update | pacman -Sy (ou -Syu) |
| Mettre à jour les paquets installés | apt-get upgrade | pacman -Su / -Syu |
| Installer un paquet | apt-get install nom | pacman -S nom |
| Installer plusieurs paquets | apt-get install a b c | pacman -S a b c |
| Supprimer un paquet | apt-get remove nom | pacman -R nom |
| Supprimer un paquet + conf | apt-get purge nom | pacman -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 updatepuissudo apt-get upgrade. - Arch :
sudo pacman -Syu.
- Debian/Ubuntu :
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.