Les “paquets cassés” sont un problème assez courants dans les distributions basées sur Debian. Lorsque vous tentez de mettre à jour le système, d’installer un nouveau paquet ou même d’en supprimer, un message d’erreur vous empêche de les manipuler. Vous vous retrouvez alors bloqué·e avec une erreur du type E: Sub-process /usr/bin/dpkg returned an error code (1)
Vérification
La commande dpkg
vous fournira plusieurs informations sur l’état de vos paquets. La commande suivantes affiche les paquets qui ont rencontrés un problème :
# dpkg -l | grep -v ^ii |
Message d’erreur
Les messages rencontrés lors de l’utilisation des commandes relatives aux paquets sont du type :
Erreur FR
(version VF)
dpkg: erreur de traitement du paquet monPaquet-problematique (--remove) : |
Erreur EN
(version EN)
dpkg: error processing monPaquet-problematique (--remove) : |
Plusieurs solutions sont possibles pour réparer le paquet cassé : le reconfigurer, forcer l’installation, forcer la suppression et en dernier recourt, supprimer les fichiers d’installations du paquets.
Reconfigurer la base de données
La base de données a peut-être été corrompue lors de l’installation du paquet. Une reconfiguration peut résoudre le problème.
# dpkg --configure -a |
Forcer l’instalaltion
L’option -f
permettra de forcer l’installation :
# apt-get install -f |
Supprimer le paquet
Vous pouvez essayer de supprimer le package :
# apt remove |
Supprimer les fichiers d’instalaltion
Vous pouvez essayer de supprimer les fichiers associés au paquet en question, il sont situés dans /var/lib/dpkg/info
.
Ici, le paquet problématique est monPaquet-problematique :
# ls -l /var/lib/dpkg/info | grep -i monPaquet-problematique |
Il ne reste plus qu’à les déplacer/supprimer :
# mv /var/lib/dpkg/info/monPaquet-problematique.* /tmp |
Maintenant, l’utilisation des commandes relatives au paquets devraient fonctionner correctement.
Documentation
https://doc.ubuntu-fr.org/probleme_apt
https://askubuntu.com/questions/765565/how-to-fix-processing-with-runit-and-git-daemon-run
https://serverfault.com/questions/179570/how-to-remove-a-package-which-post-installation-and-pre-removal-script-fails
https://itsfoss.com/dpkg-returned-an-error-code-1/