Dpkg
dpkg sur Debian : Le Gestionnaire de Paquets de Base
dpkg (Debian Package) est l’outil fondamental pour gérer les paquets .deb sur Debian et ses dérivés (Ubuntu, Mint, etc.). Contrairement à apt (qui gère les dépendances et les dépôts), dpkg agit directement sur les paquets installés ou locaux.
1. À Quoi Sert dpkg ?
- Installer/désinstaller des paquets
.deb(sans résoudre les dépendances).
- Lister les paquets installés.
- Inspecter le contenu d’un paquet.
- Vérifier l’état des paquets (installé, configuré, etc.).
⚠️ Attention :
dpkgne gère pas les dépendances automatiquement. Utilisezaptpour une gestion plus sûre.
2. Commandes de Base
(A) Installer un paquet .deb
sudo dpkg -i paquet.deb # Installe le paquet (mais ignore les dépendances)
Si des dépendances manquent :
sudo apt-get install -f # Corrige les dépendances manquantes après dpkg -i
(B) Désinstaller un paquet
sudo dpkg -r nom-du-paquet # Désinstalle le paquet (mais garde les fichiers de config)
sudo dpkg -P nom-du-paquet # Désinstalle + supprime les fichiers de config
(C) Lister les paquets installés
dpkg -l # Liste tous les paquets
dpkg -l | grep firefox # Filtre un paquet spécifique
(D) Vérifier si un paquet est installé
dpkg -s nom-du-paquet # Affiche l'état (installé, version, dépendances)
(E) Lister les fichiers d’un paquet
dpkg -L nom-du-paquet # Affiche tous les fichiers installés par le paquet
(F) Trouver à quel paquet appartient un fichier
dpkg -S /chemin/du/fichier # Ex: dpkg -S /bin/ls
(G) Vérifier l’intégrité d’un paquet
dpkg --audit # Détecte les paquets mal installés
3. Différence entre dpkg et apt
| Fonctionnalité | dpkg
|
apt
|
|---|---|---|
Installe depuis un fichier .deb
|
✅ (dpkg -i)
|
❌ (utilise apt install ./paquet.deb)
|
| Gère les dépendances | ❌ (erreur si dépendances manquantes) | ✅ (résout automatiquement) |
| Utilise les dépôts en ligne | ❌ | ✅ |
| Met à jour le système | ❌ | ✅ (apt update && apt upgrade)
|
| Affiche les paquets installés | ✅ (dpkg -l)
|
✅ (apt list --installed)
|
4. Cas d’Usage Typiques
(A) Installer un paquet téléchargé manuellement
sudo dpkg -i ~/Télécharges/paquet.deb
sudo apt-get install -f # Résout les dépendances
(B) Réparer un paquet cassé
sudo dpkg --configure -a # Termine les configurations interrompues
(C) Sauvegarder la liste des paquets installés
dpkg --get-selections > liste-paquets.txt
5. Précautions
N’utilisez pas
dpkg -ipour les mises à jour système (préférezapt upgrade).
Si
dpkgbloque à cause d’un paquet défectueux :sudo dpkg --remove --force-remove-reinstreq nom-du-paquet
6. Commandes utiles
voir tous les paquets
dpkg --list
ou
dpkg --get-selections
Liste des paquets récemment mis à jour
ls -lt /var/lib/dpkg/info/*.list | head -n 50
Nettoyer rc
dpkg -l | awk '/^rc/{print $2}' | xargs -r sudo dpkg -P
source:https://www.debian-fr.org/t/paquets-casses-comment-les-lister/16997/5
Trouver le nom exact des packages de noyau que vous souhaitez désinstaller
dpkg -l | grep "linux-[a-z]*-"
Rechercher des informations sur les paquets installés
dpkg-query -l '*curl*'
Obtenir plus de détails sur un paquet spécifique
dpkg-query -s curl
Rechercher des fichiers appartenant à un paquet
dpkg-query -S curl
Lister tous les fichiers installés par un paquet
dpkg-query -L curl
Termine la configuration des paquets interrompus.
sudo dpkg --configure -a
Utilisez les deux commandes en combo si nécessaire : Si un paquet est en état "demi-configuré"
sudo dpkg --configure -a # Essaye d'abord de terminer les configs
sudo apt --fix-broken install # Si le problème persiste
Résumé
dpkg= outil bas niveau pour manipuler les paquets.deb.
apt= outil haut niveau qui utilisedpkgen arrière-plan.
- Utilisez
dpkgpour :- Installer des paquets locaux.
- Installer des paquets locaux.
- Diagnostiquer des problèmes de paquets.
- Diagnostiquer des problèmes de paquets.
- Explorer le contenu d’un paquet.
Pour une gestion quotidienne, privilégiez apt ou apt-get ! 🚀