Dpkg
| Fiche express | |
|---|---|
| Domaine | Gestion des paquets (Debian/Ubuntu) |
| Commande | dpkg
|
| Contexte | Debian, Ubuntu et dérivés — outil bas niveau, sans résolution de dépendances |
| Voir aussi | Rpm (équivalent RHEL/CentOS) |
dpkg est l'outil bas niveau de gestion des paquets .deb sous Debian/Ubuntu :
installation, suppression, interrogation du contenu et de l'état des paquets déjà installés.
Il ne résout pas les dépendances ni ne télécharge quoi que ce soit depuis un dépôt — c'est le
rôle de apt/apt-get, qui s'appuie sur dpkg pour le travail effectif
d'installation. En pratique : apt install au quotidien, dpkg pour
inspecter un .deb local ou dépanner un paquet déjà en place.
Installer / désinstaller
dpkg -i toto.deb # installer un paquet local
dpkg -i --force-overwrite toto.deb # forcer malgré un conflit de fichiers déjà présents
dpkg -r toto # désinstaller (garde les fichiers de configuration)
dpkg --purge toto # désinstaller et supprimer aussi les fichiers de conf
Si dpkg -i échoue faute de dépendances manquantes, apt-get install -f
(ou apt --fix-broken install) les récupère et termine la configuration.
Interroger un paquet
dpkg -l # lister tous les paquets installés
dpkg -l 'toto*' # filtrer par motif
dpkg -s toto # état détaillé d'un paquet installé (Status, Version, Depends...)
dpkg -I toto.deb # infos d'un .deb pas encore installé (équivalent -s hors installation)
dpkg -L toto # fichiers installés par un paquet déjà en place
dpkg -c toto.deb # contenu d'un .deb pas encore installé (équivalent -L hors installation)
dpkg -S /usr/bin/toto # trouver quel paquet possède ce fichier (sens inverse de -L)
-L/-S sont l'un l'inverse de l'autre : -L part du paquet
pour lister ses fichiers, -S part d'un fichier pour retrouver son paquet.
Extraction et reconfiguration
dpkg -x toto.deb repertoire/ # extraire les fichiers d'un .deb sans l'installer
dpkg --configure toto # terminer la configuration d'un paquet resté à moitié installé
dpkg --configure -a # idem pour tous les paquets en attente (après une coupure apt)
dpkg-reconfigure toto # rejouer les questions de configuration (debconf) d'un paquet déjà installé
dpkg --configure -a est le premier réflexe après un apt interrompu
(paquets affichés en état iF ou iU dans dpkg -l).
Sauvegarder / restaurer la liste des paquets
dpkg --get-selections > paquets.txt # exporter la liste des paquets installés
dpkg --set-selections < paquets.txt # réimporter la sélection sur une autre machine
apt-get dselect-upgrade # puis installer effectivement la sélection importée
Les dépôts eux-mêmes (URLs des miroirs) sont déclarés dans /etc/apt/sources.list
(et /etc/apt/sources.list.d/) — dpkg ne s'en occupe pas, c'est la couche apt.