APT et la gestion des paquets

La gestion des paquets (installation, suppression, mise à jour, ...) sous Debian peut se faire avec différents outils. On connaît généralement apt-get et aptitude qui sont incontournables. Il existe également des interfaces graphiques comme synaptic, gnome-software et d'autres qui pourront rassurer certains (mais que je ne recommanderai pas). Face à ces outils, APT est la solution à utiliser pour la gestion des paquets au quotidien sous Debian. APT est facile à utiliser et dispose de toutes les fonctions de bases qui vous seront utiles.

Comme définit dans le man, APT est conçu comme une interface utilisateur et permet certaines options plus adaptées à une utilisation interactive. Toutes les opérations essentielles sont donc disponibles, de l'installation, à la mise à jour jusqu'à la suppression de paquets. Certaines fonctionnalités ont été ajoutés comme l'édition des sources ou la fonction list.

J'avais déjà présenté APT pour Jessie mais depuis Stretch on a le droit à quelques nouveautés.
La documentation n'étant pas exhaustive, c'est l'occasion de faire le point sur cet outil.

Mettre à jour la liste des paquets

La commande update permet simplement d'actualiser la liste des paquets disponibles pour votre système.


#root
apt update

Cette commande ne modifie pas le système, elle se contente de demander s'il existe de nouveaux paquets ou des nouvelles versions disponibles pour votre distribution.

L'utilisation de apt update est généralement le préalable avant toute opération effectuée avec APT.

Installer les mises à jour

Il est nécessaire de garder son système à jour et d'installer les dernières versions des paquets disponibles. Cela permet de corriger les bugs existants et d'installer les correctifs de sécurité.


#root
apt upgrade

De nouveaux paquets peuvent être installés si c'est nécessaire, mais les paquets installés ne seront jamais supprimés.
Cette commande est "sans risque".

Mettre à jour le système

La commande full-upgrade remplit sensiblement la même fonction que upgrade à la différence qu'elle peut aussi supprimer des paquets installés si cela est nécessaire pour résoudre un conflit entre des paquets. On utilise généralement cette commande lors du basculement d'une version majeure de Debian à la suivante (Jessie > Stretch).


#root
apt full-upgrade

Prenez le temps de lire les modifications qui seront effectuées sur votre système avant de valider l’exécution de la commande.

Installer un paquet

L'ajout d'un/plusieurs paquet(s) se fait avec la commande install qui gérera automatiquement l'installation de toutes les dépendances nécessaires au fonctionnement du logiciel.


#root
apt install <paquet>

<paquet> correspondant au nom exact du logiciel que l'on veut installer. Par exemple, pour installer le jeu SuperTux, la commande sera: apt install supertux.
Pour trouver le nom exact du paquet, il est possible d'utiliser la commande search ou depuis la page https://www.debian.org/distrib/packages#search_packages qui recense tous les paquets.

Installer plusieurs paquets

On peut installer plusieurs paquets en même temps en séparant le nom des paquets par un espace.


#root
apt install <paquet1> <paquet2> <paquet3> 

Installer un paquet .deb

Si vous avez besoin d'installer un paquet hors des dépôts mais que vous avez à disposition un paquet .deb, il suffit de lancer la commande:


#root
apt install /tmp/gnome-theme-gilouche_11.1.2-2_all.deb

Installer un paquet en modifiant les priorités

Si vous utilisez les dépôts de rétroportage (backports) ou si vous utilisez plusieurs branches de Debian (pinning) ou des dépôts tiers, il est possible de forcer l'installation d'un paquet (et ses dépendances) d'une branche spécifique:


#root
apt install -t stretch-backports <paquet> 

Cette commande permet d'installer la version plus récente d'un paquet présent dans les dépôts backports de Stretch.

L'utilisation des dépôts backports ne présente généralement pas de risque, mais dans les autres cas (pinning ou dépôt tiers), vérifier les modifications qui seront effectuées avant de valider les opérations.

Supprimer un paquet

Il arrive que certains paquets ne vous soient plus utiles, dans ce cas il est préférable de les désinstaller. La commande remove permet de supprimer un paquet présent sur votre système.


#root
apt remove <paquet>  

La commande supprimera également les dépendances qui ne sont plus nécessaires. Encore une fois, vérifiez la liste des paquets qui seront supprimés avant de valider les opérations.

Supprimer les paquets inutilisés

La commande autoremove supprime les paquets installés automatiquement dans le but de satisfaire les dépendances d'autres paquets et qui ne sont plus nécessaires.


#root
apt autoremove

Supprimer les fichiers de configuration d'un paquet

La suppression d'un paquet conserve habituellement les fichiers de configuration. La commande purge permet de supprimer ces fichiers néanmoins cela n'affecte aucune donnée ou configuration stockées dans votre répertoire personnel.


#root
apt purge <paquet>

La commande peut s'effectuer sur des paquets déjà supprimés.

Éditer le fichier sources.list

Il est parfois nécessaire d'éditer les sources de son système en modifiant le fichier /etc/apt/sources.list. Généralement pour l'ajout des sections non libres et des dépôts tiers.
La commande edit-sources permet de bénéficier de la coloration syntaxique et fournit des vérifications de sécurité de base.


#root
apt edit-sources

Il est nécessaire de lancer la commande update pour que les modifications soient prises en compte.

Éditer les fichiers dans sources.list.d

Pour éditer un fichier présent dans le répertoire /etc/apt/sources.list.d/, il faut spécifier son nom.


#root
apt edit-sources deb-multimedia.list

Exemple pour éditer le fichier /etc/apt/sources.list.d/deb-multimedia.list

Premier lancement et choix de l'éditeur de texte

Lors du premier lancement de la commande edit-sources, vous devrez choisir l'éditeur de texte à utiliser.


#root
Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.tiny
Choose 1-2 [1]:

Si vous ne savez pas lequel choisir, je vous recommande l'utilisation de nano en tapant 1.

Pour se déplacer dans le document avec nano, il faut utiliser les ← ↑ → ↓ du clavier. Pour coller le texte, il faut utiliser les raccourcis clavier Maj+Ctrl+V. Pour enregistrer les modifications, utilisez Ctrl+O et fermez l'éditeur de texte avec Ctrl+X.

Trouver des informations sur un paquet

La commande show affiche toutes les informations détaillées sur le paquet. Parmi les informations disponibles, on retrouve les dépendances, la taille installée et au téléchargement, la version et la description du paquet.


$user
apt show <paquet> 

La commande search permet la recherche sur le terme donné et affiche les paquets correspondants.


$user
apt search <terme>

Utile quand veut installer un paquet dont on ne connaît pas le nom exact. On pourra lancer la commande show pour obtenir plus d'informations.

Lister les paquets installés

Pour lister tous les paquets installés sur le système:


$user
apt list --installed

Lister les paquets prêts à être mis à jour

Pour lister tous les paquets prêts qui seront installés lors de la prochaine mise à jour (apt upgrade).


$user
apt list --upgradeable

Lister toutes les versions d'un paquet

Pour lister toutes les versions disponibles d'un paquet:


$user
apt list --all-versions <paquet>

Cette commande est utile si vous utilisez des dépôts tiers ou si vous utilisez plusieurs branches de Debian.

Simuler l'installation ou la mise à jour de paquets

Pour simuler l'installation ou la mise à jour de paquets sans risquer de casser son système:


#root
apt -s install <paquet>
apt -s full-upgrade

Antisèche

Télécharger le fichier apt.pdf
Télécharger le fichier source apt.odt

Ressources

Consulter le manuel de la commande apt sur votre système:


$user
man apt 
Version utilisée pour le tuto:
Debian 9.0 stretch
apt 1.4.6

3 commentaires

Sytoka |

Et pour faire un équivalent de : apt-get --purge autoremove

Mirabelle |

Pas mal de commandes bien utile, merci :)

Personnellement je préfère aptitude car il gère mieux tout ce qui est dépendance. Si un jour apt n'arrive pas à résoudre le problème, n'hésite pas à l'utiliser.

Bien à toi

Olm |

Good! Beau résumé. Merci

Fil RSS des commentaires de cet article

Écrire un commentaire