web-dev-qa-db-fra.com

Comment réparer un .Deb corrompu?

Très bien, donc, j'ai eu une erreur vraiment persistante. J'ai essayé d'installer mfc6490cwlpr: i386 (téléchargé en tant que mfc6490cwlpr-1.1.2-2.i386.deb) et l'ai installé à l'aide de gdebi ou d'Ubuntu Software Center, probablement les deux même. En suivant les instructions, j'ai redémarré mon ordinateur et l'erreur suivante est apparue sur ma barre supérieure dans Unity:

An error occured, please run Package Manager from the right-click menu or apt-get in a terminal to see what is wrong. The error message was: 'Unknown Error:'<type 'exceptions.SystemError'>'(E:The package mfc6490cwlpr:i386 needs to be reinstalled, but I can't find an archive for it.)'. This usually means that your installed packages have unmet dependencies

J'ai essayé plusieurs façons de le supprimer. Parmi les commandes suivantes:

Sudo dpkg --remove --force-remove-reinstreq mfc6490cwlpr:i386
Sudo dpkg --force-all -r mfc6490cwlpr:i386

En creusant plus loin dans l'histoire, je trouve cette commande:

Sudo dpkg  -i  --force-all  --force-architecture  mfc6490cwlpr-1.1.2-2.i386.deb

Je cours sur un processeur AMD 64 bits.

Chaque fois que je fais quelque chose qui implique apt-get, mise à jour, synaptique ou quoi quoi quoi, j'obtiens cette erreur:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: The package mfc6490cwlpr:i386 needs to be reinstalled, but I can't find an archive for it.

Le programme de mise à jour a recommandé une mise à niveau dist, qui n'a pas fonctionné.

Quelqu'un at-il des idées pour supprimer le .deb corrompu? Je pourrai le réinstaller plus tard lorsque j'aurai plus de temps pour étudier le branchement de l'imprimante. Mais pour l'instant, je suis plus soucieux de le retirer de mon ordinateur.

À noter: je ne suis PAS adepte de la ligne de commande, bien que j'essaye. Je suis assez dangereux avec ça, en fait.

3
Ruben Bakker

(publié en question par OP)

----RÉPARER----:

Déjà corrigé. Le lien suivant a aidé: http://blog.bodhizazen.com/linux/apt-get-how-to-fix-very-broken-packages/

Voici ce qu'il dit: allez dans le /var/lib/dpkg/info répertoire utilisant le terminal. Faire:

ls [PART OF NAME OF PACKAGE]*

N'oubliez pas que l'astérisque (*) est important. Si tout va bien, vous obtenez cinq résultats, dont 3 sont verts. Du moins, c'était le cas dans mon cas. Si vous obtenez plus, écrivez le nom du package presque en entier et réessayez la commande ci-dessus.

Alors fais:

Sudo rm [PART OF NAME OF PACKAGE]*

Et suivez:

Sudo dpkg --remove --force-remove-reinstreq [NAME OF PACKAGE]

Ne suivez pas ce conseil si vous n'avez encore rien essayé d'autre. Je crains que ce soit très destructeur, lol, mais j'ai survécu aux conséquences et apt-get fonctionne à nouveau.

2
Ringtail

Ce qui suit est une méthode graphique et propre.

Ouvrez l'application Update Manager, recherchez les mises à jour. Vous devriez voir apparaître "Mise à niveau partielle". Cliquez dessus et vérifiez qu'il propose de supprimer uniquement votre package particulier. Alors continuez.

0
Agmenor