web-dev-qa-db-fra.com

Comment supprimer les paquets cassés dans Ubuntu

Je ne peux pas enlever le colis cassé. Utilisez la commande suivante: Sudo apt-get -f install mais j'obtiens la réponse suivante:

Preparing to unpack .../nodejs_0.10.28-1chl1~trusty1_AMD64.deb ...
Unpacking nodejs (0.10.28-1chl1~trusty1) over (0.10.25~dfsg2-2ubuntu1) ...
dpkg: error processing archive /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_AMD64.deb (--unpack):
 trying to overwrite '/usr/share/man/man1/node.1.gz', which is also in package nodejs-legacy 0.10.25~dfsg2-2ubuntu1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Processing triggers for man-db (2.6.7.1-1) ...
Errors were encountered while processing:
 /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_AMD64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

J'ai essayé diverses commandes comme

 2015  Sudo apt-get clean
 2020  Sudo dpkg --configure -a
 2023  Sudo apt-get autoremove
 2034  Sudo apt-get upgrade && Sudo apt-get -f install

Mais je n'ai eu aucun résultat. Je ne peux pas installer synaptic. Des idées comment puis-je enlever le paquet cassé?

32
Krasimir

Cela a résolu mon problème:

Sudo dpkg -i --force-overwrite /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_AMD64.deb
4
Krasimir

exécutez cette commande pour supprimer les paquets cassés dans Ubuntu.

Sudo dpkg --remove --force-remove-reinstreq package_name 

après avoir retiré le paquet, mettez votre système à jour avec la commande

Sudo apt-get update

redémarrer le système après une mise à jour réussie.

46
premal

Ouvrez votre terminal et utilisez la commande suivante

Sudo dpkg --purge nodejs-legacy
Sudo apt-get install -f

Cela devrait résoudre votre problème.

11
g_p

J'ai trouvé ça:

Sudo dpkg --remove --force-remove-reinstreq <packagename>

Fonctionne mieux. Si le message d'erreur suivant ne vous permet pas de supprimer un package, supprimez-le, supprimez-le également. Vous devrez répéter cette étape plusieurs fois, puis réinstaller vos packages supprimés.

Le force-remove-reinstreq est "l’option nucléaire" de la suppression d’un paquet. Il échoue uniquement s'il existe un autre package en fonction de celui que vous êtes sur le point de supprimer. Là encore, dans ce cas, supprimez également le package en question.

10
Bryan Wilcutt

Ouvrez votre terminal et collez-les ligne après ligne

Sudo rm -rf  /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_AMD64.deb
Sudo apt-get autoclean
Sudo apt-get update
Sudo apt-get upgrade

puis réessayez

3
rɑːdʒɑ

rien de ce qui précède n'a fonctionné pour moi. finalement, j'ai édité le fichier/var/lib/dpkg/status et enlevé les paquets à partir de là.

Difficile, je ne conseillerais pas de le faire, juste si quelque chose échouait ...

2
BonifatiusK

Rien de ce qui précède n'a fonctionné pour moi

J'ai utilisé Sudo aptitude.

Il a immédiatement trouvé l'erreur et proposé des options. Vous sélectionnez et cela corrige.

1
Aryeh Beitz

La même erreur se répète Si nous faisons apt-get clean et apt-get -f install sauf si nous supprimons les données indésirables du fichier /var/lib/dpkg/status dans Ubuntu.

Supposons que nous ayons besoin de supprimer le paquet cassé Apache. Initialement, nous devons ouvrir le fichier de statut et rechercher le paquet Apache. Supprimez la description complète du paquet et enregistrez le fichier d'état. Ensuite, essayez d'utiliser apt-get -f install et apt-get clean.

1
user649305
  1. interroger tous les paquets installés aujourd'hui ou hier awk -v foo=$(date '+%Y-%m-%d') -v bar=$(date -d "yesterday" '+%Y-%m-%d') '($1==foo || $1==bar) && $3~/^install$/ { print $4 }' /var/log/dpkg.log
  2. wine-qqintl: i386 a causé le problème, donc je supprime le paquet Sudo dpkg -r wine-qqintl:i386

  3. terminé.

0
Ming Zhanghui

En voici un:

mettre à jour votre liste de paquets comme ceci

 Sudo apt-get update

puis nettoyez tous les paquets partiels

 Sudo apt-get autoclean

Maintenant, nettoyez le cache d'apt

 Sudo apt-get clean

Maintenant, supprimez toutes les dépendances inutiles

 Sudo apt-get autoremove

à partir de la commande ci-dessus, vous pouvez identifier tous les paquets cassés et les supprimer de force comme ceci

 Sudo dpkg --remove --force-remove-reinstreq package_name

Enfin, mopup tous les autres paquets avec dépendances

 Sudo apt-get -f install 

Dis moi comment ça se passe.

0
Olu Smith

J'ai eu un problème avec le paquet Kodi cassé. J'ai ouvert le gestionnaire de paquets synaptic et utilisé le filtre "cassé" pour localiser le paquet et l'ai marqué pour une suppression complète. Cela a fonctionné comme un champion.

0
Joe