Apt-get

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Gestion des paquets (Debian/Ubuntu)
Commande apt-get
Contexte Debian, Ubuntu et dérivés — gère les dépendances et les dépôts, contrairement à dpkg qui travaille sur les .deb individuels
Config /etc/apt/sources.list (+ /etc/apt/sources.list.d/)
Voir aussi Dpkg · Yum (équivalent RHEL/CentOS)

apt-get est le gestionnaire de paquets historique de Debian/Ubuntu : il résout les dépendances, télécharge les paquets depuis les dépôts déclarés et s'appuie sur dpkg pour le travail effectif d'installation/suppression des .deb. C'est l'équivalent conceptuel de Yum côté RHEL/CentOS.

Installer, supprimer

apt-get install <paquet>            # installer (et résoudre les dépendances)
apt-get install <paquet>=<version>   # installer une version précise

apt-get remove <paquet>              # désinstaller, garde les fichiers de configuration
apt-get remove --purge <paquet>      # désinstaller et supprimer aussi les fichiers de conf
apt-get autoremove                   # nettoyer les dépendances devenues inutiles
apt-get autoremove --purge           # idem, en purgeant leurs fichiers de conf

Mettre à jour le système

apt-get update           # rafraîchir la liste des paquets disponibles (à faire avant tout le reste)
apt-get upgrade          # mettre à jour les paquets installés, sans en ajouter/retirer
apt-get dist-upgrade     # idem, mais autorise à installer/retirer des paquets si nécessaire (changement de dépendances)
apt-get dist-upgrade -u  # comme dist-upgrade, en affichant la liste complète des paquets mis à jour

upgrade refuse de casser un paquet existant en changeant ses dépendances ; dist-upgrade le fait si besoin (typiquement lors d'un changement de version majeure de la distribution).

Rechercher, inspecter (apt-cache)

apt-cache search <motif>     # rechercher un paquet par nom/description
apt-cache show <paquet>      # description, version, dépendances déclarées
apt-cache showpkg <paquet>   # description avancée : versions disponibles, dépendances inverses
apt-cache policy <paquet>    # version installée vs versions disponibles par dépôt (utile en cas de pin/priorité)
apt-cache depends <paquet>   # arbre des dépendances directes

apt-get vs dpkg

apt-get travaille au niveau des dépôts : il connaît les dépendances, va chercher les paquets sur le réseau (ou un miroir local) et orchestre leur installation. Dpkg travaille au niveau du fichier .deb individuel, une fois celui-ci déjà présent sur la machine — sans résoudre de dépendances ni contacter de dépôt. En pratique, apt-get appelle dpkg en coulisses pour effectuer l'installation proprement dite. Si un dpkg -i échoue faute de dépendances, apt-get install -f les récupère et termine la configuration.

apt vs apt-get

Depuis Debian 8 / Ubuntu 16.04, la commande apt regroupe en un seul frontend les usages les plus courants d'apt-get et d'apt-cache (apt install, apt update, apt upgrade, apt search, apt show...), avec une sortie plus lisible et une barre de progression. Elle est recommandée pour l'usage interactif au quotidien. apt-get/apt-cache restent préférés dans les scripts, car leur sortie et leurs options sont stables d'une version à l'autre — celles d'apt ne sont pas garanties et peuvent changer sans préavis.

Nettoyer le cache

apt-get clean       # vider entièrement le cache local des .deb téléchargés (/var/cache/apt/archives)
apt-get autoclean   # ne retirer que les .deb dont la version n'est plus téléchargeable (obsolètes)
apt-get check        # vérifier la cohérence des dépendances installées

Dépôts

Les dépôts sont déclarés dans /etc/apt/sources.list et /etc/apt/sources.list.d/*.list :

deb http://deb.debian.org/debian bookworm main contrib non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free-firmware

Un apt-get update est nécessaire après toute modification de ces fichiers pour que la liste des paquets disponibles soit à jour.

Voir aussi

  • Dpkg — outil bas niveau sur lequel s'appuie apt-get
  • Yum — équivalent RHEL/CentOS