Не могу установить / удалить / обновить любой пакет

Несколько дней назад я пытался обновить 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 из командной строки, я получаю такой вывод:

[ 111]

... который выглядит примерно так же, как когда я начинал с проблемы, поэтому я посмотрел в info - нет пакета 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

Не уверен, поможет ли это.

11
задан 19 October 2011 в 08:28

3 ответа

Вот что сработало для меня:

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

Я сообщу, если что-то пойдет не так. Кстати, решение было опубликовано на Как заставить dpkg снова работать?

О да, совет: теперь мне нужно использовать Synaptic для обновления системы каждый раз, потому что ubuntu-docs есть в каждом обновлении и мне нужно снять галочку: - /. Думаю, я начну другой вопрос, чтобы спросить, как удалять определенный пакет из каждого последующего обновления.

0
ответ дан 19 October 2011 в 08:28

Возможно, ваши команды просто пытаются повторно использовать поврежденный пакет, который кэшируется на вашем компьютере. Попробуйте выполнить следующую команду, чтобы очистить кэш apt:

sudo apt-get clean

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

После этого вы сможете пройти процесс обновления как обычно.

0
ответ дан 19 October 2011 в 08:28

Иногда поврежденный установочный пакет может повредить вашу систему управления пакетами, в результате чего Linux не сможет установить или удалить какие-либо пакеты (программное обеспечение). Вот сообщение об ошибке, которое я получил от apt-get после попытки установить ndas-admin для Ubuntu.

$ sudo apt-get install mplayer (или любой пакет) Чтение списков пакетов… Готово Создание дерева зависимостей
Чтение информации о состоянии… Готово 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.)

Исправлено. Надеюсь, это поможет кому-то еще.

0
ответ дан 19 October 2011 в 08:28

Другие вопросы по тегам:

Похожие вопросы: