Comment forcer la suppression lorsque le script de post-installation échoue toujours

37

J'ai un paquet personnalisé installé sur mon Ubuntu 10.10, et en essayant de le supprimer, j'ai:

$ sudo dpkg -r package
sub-process script post-installation installed returne an error state 127

(le message renvoyé par la commande a été traduit du portugais (br).

J'ai donc noté que dans le script d'installation de ce paquet, il créait une entrée à mon démarrage, un dossier sur / opt et un utilisateur.

J'ai enlevé tout ce qu'il a créé. Mais maintenant, je veux juste le supprimer de la liste de dpkg, parce que je veux que mon linux ressemble à si je n’avais jamais installé ce paquet.

Comment puis-je faire ceci?

Gabriel L. Oliveira
la source

Réponses:

47

Vous devrez peut-être supprimer manuellement le package à l'aide de:

sudo dpkg --purge --force-all package

Remplacez-le packagepar le nom du paquet.

Remarque: il est recommandé de signaler un bogue si le paquet n'est pas à vous ou si ce que le script ne sait pas vous est inconnu.

Braiam
la source
1
@ jcomeau_ictx bien sûr ... la question concerne le post-retrait, pas le pré.
Braiam
30

essayer de supprimer xmail avec dpkg --purge --force-all xmailéchec car le script de pré-suppression se terminait avec un échec lors de la tentative d'arrêt du démon xmail. J'ai trouvé la solution ici: https://serverfault.com/questions/179570/how-to-remove-a-package-which-post-installation-and-pre-removal-script-fails

spécifiquement, j’ai édité /var/lib/dpkg/info/xmail.prerm et changé || exit $!pour|| true

jcomeau_ictx
la source
1
Je ne comprends pas le vote négatif. l'autre solution ne couvre pas tous les cas, ce qui fournit une aide au reste.
jcomeau_ictx
1
Si je dois deviner, vous répondez "a échoué parce que le script de pré-suppression", cette question concerne le script "post-installation". Vous ne répondez pas à la question actuellement posée.
Braiam
2
J'ai eu un problème avec le script de pré-suppression et cela m'a aidé.
Bogdan Calmac
2
Comme on peut s'y attendre, si la modification des *.prermfichiers est trop fastidieuse, vous pouvez également les supprimer - la procédure de désinstallation fonctionne sans eux
Paulius Šukys le
merci, je ne savais pas ça! cela mérite une réponse séparée, si vous voulez le faire.
jcomeau_ictx