No se puede instalar / eliminar / actualizar ningún paquete

11

Así que he estado intentando actualizar Ubuntu 11.10 de 64 bits hace unos días y recibí un error:

dpkg: ../../src/archives.c:978: tarobject: La afirmación `r == stab.st_size 'falló.

Así que seguí esta publicación de los foros de Ubuntu y esta .

Eliminado ubuntu-docsde la carpeta de información y el archivo de estado.

Ahora, cada vez que intento instalar / eliminar / actualizar cualquier paquete, recibo un error:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 968, in simulate
    trans.unauthenticated = self._simulate_helper(trans)
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 1092, in _simulate_helper
    return depends, self._cache.required_download, \
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 235, in required_download
    pm.get_archives(fetcher, self._list, self._records)
SystemError: E:I wasn't able to locate a file for the ubuntu-docs package. This might mean you need to manually fix this package.

Cuando intento instalar ubuntu-docsdesde la línea de comandos, obtengo este resultado:

 BlockquoteReading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  ubuntu-docs
1 upgraded, 0 newly installed, 0 to remove and 33 not upgraded.
1 not fully installed or removed.
Need to get 1,408 kB of archives.
After this operation, 22.5 MB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ oneiric/main ubuntu-docs all 11.10.4 [1,408 kB]
Fetched 1,408 kB in 5s (265 kB/s)        
(Reading database ... 
dpkg: warning: files list file for package `ubuntu-docs' missing, assuming package has no files currently installed.
(Reading database ... 323646 files and directories currently installed.)
Preparing to replace ubuntu-docs 11.10.4 (using .../ubuntu-docs_11.10.4_all.deb) ...
Unpacking replacement ubuntu-docs ...
dpkg: ../../src/archives.c:978: tarobject: Assertion `r == stab.st_size' failed.
E: Sub-process /usr/bin/dpkg exited unexpectedly

... que se ve más o menos igual que cuando comencé con el problema, así que busqué información: no hay un paquete ubuntu-docspero hay una entrada en el estado, así que lo eliminé e intenté nuevamente, pero tan pronto como lo hago, sudo dpkg --configure -ala entrada ubuntu-docsvuelve a aparecer .

¿Alguna idea?

Editar (no como un comentario para guardar el formato) :

Este hilo dice que necesito ejecutar sudo apt-get updatedespués de eliminar las líneas correspondientes del estado. Entonces corrí sudo apt-get cleanseguido de sudo apt-get update. Pero recibí un mensaje que decía:

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.

Después de ejecutarse sudo dpkg --configure -a, el archivo de estado contiene las siguientes líneas:

Package: ubuntu-docs
Status: install reinstreq half-installed
Priority: optional
Section: doc
Version: 11.10.4

No estoy seguro si ayuda.

sabio
fuente

Respuestas:

7

A veces, un paquete de instalación dañado puede dañar su sistema de administración de paquetes, dejando a su Linux incapaz de instalar o eliminar cualquier paquete (Software). Aquí está el mensaje de error que recibí de apt-get después de intentar instalar ndas-admin para Ubuntu.

$ sudo apt-get install mplayer (o cualquier paquete) Leyendo listas de paquetes ... Hecho Construyendo árbol de dependencias
Leyendo información de estado ... Hecho E: El paquete ndas-admin necesita ser reinstalado, pero no puedo encontrar un archivo para él. (este es el error)

Traté sudo apt-get install -fde intentar solucionar el problema pero obtuve el mismo error. La única opción que tenía era editar el archivo de estado dpkg manualmente.

$ sudo gedit /var/lib/dpkg/status    (if you prefer you can use vi instead of gedit)
Locate the corrupt package, and remove the whole block of information about it and save the file. Mine looked like this:

Package: ndas-admin
Status: deinstall reinstreq half-configured
Priority: extra
Section: alien
Installed-Size: 100
Maintainer: root <root@ubuntu510>
Architecture: i386
Version: 1.0.2-24
Depends: libc6 (>= 2.3.4-1)
Description: Administration toosl for XIMETA,Inc NDAS device driver for Linux operating system
 ndas-admin – This program allows the user to register/enable/disable/unregister the XIMETA NDAS hard disk.
 .
 (Converted from a rpm package by alien version 8.53.)

Fijo. Espero que esto ayude a alguien más.

Fazlur Rahaman Naik
fuente
Tuve un problema similar y pude solucionarlo de esta manera. ¡Gracias!
estudiante
6

Esto es lo que funcionó para mí:

sudo dpkg --force-all -r ubuntu-docs

Informaré si algo sale mal nuevamente. Por cierto, la solución se publicó en ¿Cómo hacer que dpkg vuelva a funcionar?

Ohh sí, un consejo: ahora necesito usar Synaptic para actualizar el sistema cada vez, porque ubuntu-docs está en cada actualización y necesito desmarcarlo: - /. Supongo que comenzaré otra pregunta para preguntar cómo eliminar un paquete en particular de cada actualización posterior.

sabio
fuente
1

Es posible que sus comandos solo estén tratando de reutilizar un paquete corrupto que está en caché en su máquina. Intente ejecutar el siguiente comando para borrar el caché de apt:

sudo apt-get clean

(advertencia, eso eliminará todos los paquetes en caché, por lo que si está a la mitad de una instalación, deberá volver a descargar un montón de cosas).

Entonces debería poder pasar por el proceso de actualización de la forma habitual.

Robots imaginarios
fuente
Ok, entonces necesito eliminar la información relacionada con ubuntu-docs del archivo de estado y luego necesito sudo apt-get clean. De esa manera puedo instalar cualquier paquete con sudo dpkg -i pero aún no puedo actualizar.
wisemonkey
¿Qué sucede si ahora ejecuta lo siguiente? sudo apt-get -f install
ImaginaryRobots
Lo mismo, no puedo formatear esto, pero aquí está: sudo apt-get -f install (Leyendo la base de datos ... dpkg: advertencia: el archivo de la lista de archivos para el paquete ubuntu-docs' missing, assuming package has no files currently installed. (Reading database ... 323783 files and directories currently installed.) Preparing to replace ubuntu-docs 11.10.4 (using .../ubuntu-docs_11.10.4_all.deb) ... Unpacking replacement ubuntu-docs ... dpkg: ../../src/archives.c:978: tarobject: Assertion r == stab.st_size 'falló. E: Subproceso / usr / bin / dpkg salió inesperadamente
sabiomonkey
Me pregunto si es un error? No quiero reinstalar todo: - /
wisemonkey