Apt / Synaptic necesita reinstalar el paquete pero no puede encontrar el archivo

36

Al ejecutar Synaptic, aparece el siguiente mensaje de error:

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.

Al aceptar el mensaje, Synaptic se cierra.

David
fuente
3
¿Qué conjunto de instrucciones / sitio web seguías y qué problema tenías?
Panther

Respuestas:

65

Bueno, es posible que necesitemos algunos pasos para solucionar esto.

  1. Empezar con:

    sudo dpkg --remove --force-all hl1440lpr
    
  2. Si eso falla:

    sudo rm -i /var/lib/dpkg/info/hl1440lpr.*
    sudo dpkg --remove --force-remove-reinstreq hl1440lpr
    
  3. Confirme que Apt es fijo. El siguiente comando no debería devolver errores:

    sudo apt-get update
    
Pantera
fuente
Me encontré con esta situación cuando estaba actualizando a Ubuntu 12.10 pero accidentalmente suspendí la computadora a mitad de camino. Al despertar la computadora, la actualización había fallado (obviamente) y apareció un icono rojo al lado del medidor de batería que decía que una E:The package xterm needs to be reinstalled, but I can't find an archive for it.vez que apliqué la sugerencia aquí, sudo dpkg --remove --force-all xtermtodo se solucionó. ¡Gracias! PD, sería bueno si pudieras editar sodopara decir sudo, no quisiera molestar, pero eso descarrilaría a alguien que no sabía nada sobre Linux.
Dylan Murphy
1
Gracias bodhi.zazen. Su solución funcionó para mi hermano conductor defectuoso; dcpj4110dwlpr.
v2r
¡Perfecto! La primera solución falló y colgó el proceso, pero la segunda funcionó. ¡Gracias! (probado en el servidor Debian)
Shautieh
Solo un complemento para @panther El sudo dpkg --remove --force-all hl1440lpr funcionó para otros paquetes, el mío era un libperl5.22 que parece haberse bloqueado durante una actualización. El único problema era que me requería tener permiso de root. Como estaba en la nube de Google, su no funcionó hasta que hice una contraseña.
JustAGrump
6

Resulta que esto no se repararía usando los comandos regulares porque había deshabilitado el multiverserepositorio en la ventana de software y actualizaciones, después de instalar el paquete .

Leí para hacer esto en una publicación en otro lugar, y no fue sino hasta otra publicación que leí que me hizo verificar dos veces para asegurarme de que estaba HABILITADO , luego me di cuenta de que nunca debería haber desactivado eso en primer lugar.

Habilitar el repositorio multiverso nuevamente me permitió reinstalar el paquete.


Por lo tanto, en general, si ocurre este tipo de errores, asegúrese de no haber deshabilitado la fuente de software de la que proviene este paquete.

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

(más borrado de archivos)

Funciona de maravilla. Synaptic debería ofrecer esta función en lugar de morir y dejar a las personas con un gran desastre. synaptic no es fácil de usar.

sináptico no amante
fuente
2
debe tener cuidado con este comando, dependiendo de lo que esté eliminando, podría caer en cascada para eliminar todo su escritorio.
ravery