Actualmente no puedo instalar ningún paquete. Recibo el siguiente error:
dpkg: unrecoverable fatal error, aborting: too-long line or missing newline in `/var/lib/dpkg/diversions
He intentado varios enfoques:
sudo dpkg --configure -a sudo apt-get clean sudo dpkg-divert --list sudo apt-get check sudo apt-get install -f
etc. pero todo fue en vano. O bien la salida era aparentemente normal o el error anterior fue lanzado.
Estoy perplejo en cuanto a cómo proceder y agradecería cualquier ayuda. Si se requiere alguna información adicional sólo tiene que preguntar.
Gracias por la respuesta. Seguí las sugerencias y ahora estoy recibiendo un error diferente:
(Leyendo la base de datos … 50% dpkg: error fatal irrecuperable, cancelando: falta el archivo de la lista de archivos del paquete ‘libksane0’ E: Subproceso / usr / bin / dpkg devolvió un código de error (2)
Aquí está el enlace para las desviaciones actuales: http://paste.ubuntu.com/823500/ y el viejo roto: http://paste.ubuntu.com/823502/
Intenté reinstalar libksane0
pero ocurrió el mismo error.
Sé que esto es muy tarde, pero a otras personas les puede resultar útil. El mismo mensaje de error con un archivo diferente apareció en Kali (Debian-Variant) y la mejor solución que encontré fue copiar el archivo erróneo de una copia aún en funcionamiento de Kali. Problema resuelto.
Primero, haga una copia de seguridad de / var / lib / dpkg / diversions y / var / lib / dpkg / diversions-old, por si acaso.
A continuación, intente copiar / var / lib / dpkg / diversions-old encima de / var / lib / dpkg / diversions:
cd /var/lib/dpkg mv diversions diversions.broken cp diversions-old diversions
Ahora dpkg debería poder volver a funcionar, pero es posible que su base de datos de desvíos esté incompleta. Reinstalar ( apt-get install --reinstall packagename
) los paquetes afectados pueden ser una buena manera de restaurar eso; La pregunta es: ¿cómo puede identificar qué paquetes se vieron afectados? La comparación de los contenidos de diversions.broken y diversions-old ( diff -u diversions-old diversions.broken
) es una forma; buscando en /var/log/dpkg.log una lista de paquetes actualizados recientemente y reinstalarlos por si acaso es otro. También es posible que no ocurra nada malo si usted tiene una base de datos de desvíos un poco desactualizada; todo depende de lo que es exactamente en esos archivos.