Поэтому я пытался обновить 64-битную Ubuntu 11.10 несколько дней назад и получил ошибку:
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
Не уверен, что это поможет.
источник
Вот что сработало для меня:
Я сообщу, если что-то пойдет не так по этому поводу снова. Кстати, решение было опубликовано на Как заставить работать dpkg снова?
О, да, совет: теперь мне нужно использовать Synaptic для обновления системы каждый раз, потому что ubuntu-docs есть в каждом обновлении, и мне нужно убрать галочку: - /. Думаю, я начну другой вопрос, чтобы спросить, как удалить конкретный пакет из каждого последующего обновления.
источник
Возможно, ваши команды просто пытаются повторно использовать поврежденный пакет, который кэшируется на вашем компьютере. Попробуйте выполнить следующую команду, чтобы очистить кэш apt:
(предупреждение, которое удалит все кэшированные пакеты, поэтому, если вы находитесь на полпути после установки, вам потребуется повторно загрузить кучу вещей).
После этого вы сможете пройти процесс обновления как обычно.
источник
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 неожиданно