Неможливо встановити / видалити / оновити жоден пакет


11

Тому я намагався оновити Ubuntu 11.10 64-бітні кілька днів тому і отримав помилку:

dpkg: ../../src/archives.c:978: tarobject: твердження `r == stab.st_size 'не вдалося.

Тому я дотримувався цієї публікації на форумах Ubuntu і цього .

Видалено ubuntu-docsз інформаційної папки та файла статусу.

Тепер, коли я намагаюся встановити / видалити / оновити будь-який пакет, я отримую помилку:

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.

Коли я намагаюся встановити ubuntu-docsз командного рядка, я отримую такий вихід:

 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

... , який виглядає приблизно так само , як тоді , коли я почав з проблемою, так що я подивився в інформації - немає пакета , ubuntu-docsале є запис в стані , так що я видалив його і спробував ще раз, але як тільки я sudo dpkg --configure -aзапис для ubuntu-docsзнову з'являється .

Будь-які думки?

Редагувати (не як коментар для збереження форматування) :

Цей потік говорить, що мені потрібно запустити sudo apt-get updateпісля видалення відповідних рядків зі статусу. Тож я побіг sudo apt-get cleanза ним sudo apt-get update. Але мені надійшло повідомлення:

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

Після запуску sudo dpkg --configure -aфайл статусу містить такі рядки:

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

Не впевнений, чи допомагає це.

Відповіді:


7

Іноді пошкоджений інсталяційний пакет може пошкодити вашу систему управління пакунками, не даючи вашій Linux можливості встановити або видалити будь-які пакети (Програмне забезпечення). Ось помилка повідомлення, яке я отримав від apt-get після спроби встановити ndas-admin для Ubuntu.

$ sudo apt-get install mplayer (або будь-який пакет) Читання списків пакетів… Готово дерево залежності залежності
Читання інформації про стан… Done E: Пакет ndas-admin потрібно перевстановити, але я не можу знайти для нього архів. (це помилка)

Я спробував sudo apt-get install -fвиправити проблему, але отримав ту ж помилку. Єдиний варіант, який я мав, - це редагувати файл статусу dpkg вручну.

$ 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.)

Виправлено. Сподіваюся, це допоможе комусь іншому.


Мав подібну проблему і зміг виправити саме так! Спасибі!
студент

6

Ось що для мене спрацювало:

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

Я повідомлю, якщо щось піде не так знов. Рішення BTW було розміщено в розділі Як знов працювати dpkg?

О, так, порада: Тепер мені потрібно використовувати Synaptic для оновлення системи щоразу - тому що ubuntu-docs є в кожному оновленні, і мені потрібно знімати його: - /. Напевно, я розпочну інше питання, щоб запитати, як видалити певний пакет із кожного наступного оновлення.


1

Можливо, що ваші команди просто намагаються повторно використовувати пошкоджений пакет, кешований на вашій машині. Спробуйте виконати таку команду, щоб очистити підходящий кеш:

sudo apt-get clean

(попередження, це видалить усі кешовані пакети, тому якщо ви перебуваєте на півдорозі встановлення, потрібно буде знову завантажити купу речей).

Тоді ви зможете пройти процес оновлення як звичайний.


Гаразд, мені потрібно видалити інформацію про ubuntu-docs з файлу статусу, а потім потрібно sudo apt-очистити. Таким чином я можу встановити будь-який пакунок із sudo dpkg -i, але все ще не можу оновити.
wisemonkey

що станеться, якщо ви зараз запустите наступне? sudo apt-get -f install
ImaginaryRobots

те саме, я не можу цього форматувати, але ось це: sudo apt-get -f install (Читання бази даних ... dpkg: попередження: файл списку файлів для пакету 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 'не вдалося. E: Підпроцес / usr / bin / dpkg несподівано вийшли
wisemonkey

Мені цікаво, чи це помилка? Я не хочу перевстановлювати все: - /
wisemonkey
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.