Apt / Synaptic a besoin de réinstaller le paquet mais ne trouve pas l'archive correspondante


36

En exécutant Synaptic, le message d'erreur suivant s'affiche:

E: The package hl1440lpr needs to be reinstalled, but I can't find an archive for it.
E: Internal error opening cache (1). Please report.

Après avoir accepté le message, Synaptic se ferme.


3
Quel ensemble d’instructions / site Web suiviez-vous et quel problème aviez-vous?
Panther

Réponses:


65

Nous aurons peut-être besoin de quelques étapes pour résoudre ce problème.

  1. Commencer avec:

    sudo dpkg --remove --force-all hl1440lpr
    
  2. Si cela échoue:

    sudo rm -i /var/lib/dpkg/info/hl1440lpr.*
    sudo dpkg --remove --force-remove-reinstreq hl1440lpr
    
  3. Confirmer Apt est corrigé. La commande suivante ne doit renvoyer aucune erreur:

    sudo apt-get update
    

J'ai rencontré cette situation lors de la mise à niveau vers Ubuntu 12.10, mais j'ai accidentellement suspendu l'ordinateur à mi-chemin. Au réveil de l'ordinateur, la mise à niveau a (évidemment) échoué et une icône rouge apparaît à côté du compteur de batterie indiquant que, dès E:The package xterm needs to be reinstalled, but I can't find an archive for it.que j'ai appliqué la suggestion proposée ici, sudo dpkg --remove --force-all xtermtout a été corrigé. Merci! ps, ce serait bien si vous pouviez éditer sodopour dire sudo, je ne voudrais pas nitpick mais cela dérangerait quelqu'un qui ne savait rien de Linux.
dylan murphy

1
Merci bodhi.zazen. Votre solution a fonctionné pour mon frère-conducteur défectueux; dcpj4110dwlpr.
v2r

Parfait! La première solution a échoué et a suspendu le processus, mais la deuxième a fonctionné. Merci! (essayé sur le serveur Debian)
Shautieh le

Juste un addon à @panther Le sudo dpkg --remove --force-all hl1440lpr a fonctionné pour d’autres paquets, le mien était un libperl5.22 qui semble avoir eu un crash lors d’une mise à jour. Le seul problème était qu'il me fallait être en permission root. Comme j'étais dans google cloud, su n'a pas fonctionné jusqu'à ce que j'ai créé un mot de passe.
JustAGrump

6

En fin de compte, cela ne réparerait pas à l'aide des commandes habituelles car j'avais désactivé le multiverseréférentiel dans la fenêtre du logiciel et des mises à jour, après l'installation du paquet .

J'ai lu pour le faire dans un post ailleurs, et ce n'est que lorsque j'ai lu un autre post qui m'a validé de vérifier qu'il était activé , puis j'ai réalisé que je n'aurais jamais dû le désactiver.

Activer à nouveau le référentiel multivers m'a permis de réinstaller le paquet.


En règle générale, si ce genre d'erreur se produit, assurez-vous de ne pas avoir désactivé la source de logiciel d'où provient ce paquet.


3
dpkg --remove --force-remove-reinstreq   broken---stuff

(plus effacement de fichier)

fonctionne comme un charme. synaptic devrait offrir cette fonction au lieu de mourir et de laisser les gens dans un désordre énorme. synaptic n'est pas convivial.


2
vous devez faire attention avec cette commande, selon ce que vous supprimez, il pourrait y avoir une cascade dans la suppression de tout votre bureau.
Ravery
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.