Невозможно установить какие-либо обновления через менеджер обновлений / apt-get upgrade

Я использую Ubuntu 12.04 в течение последних нескольких недель. Недавно я пытался загрузить и установить некоторые файлы через диспетчер обновлений. Он обнаружил несколько файлов, скачал их, но затем не смог их установить. Это дало ошибку:

installArchives() failed: (Reading database ... 
(Reading database ... 80%
dpkg: unrecoverable fatal error, aborting:
 reading files list for package 'libasn1-8-heimdal': Input/output error

Я пытался использовать apt-get upgrade, но была схожая ошибка:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  icedtea-6-jre-cacao icedtea-6-jre-jamvm openjdk-6-jre openjdk-6-jre-headless
  openjdk-6-jre-lib
5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/34.6 MB of archives.
After this operation, 1,024 B of additional disk space will be used.
Do you want to continue [Y/n]? y
(Reading database ... 80%
dpkg: unrecoverable fatal error, aborting:
 reading files list for package 'libasn1-8-heimdal': Input/output error
E: Sub-process /usr/bin/dpkg returned an error code (2)

Любая помощь будет принята с благодарностью. Заранее спасибо.

Редактировать: вот дополнительная информация, которая может быть полезна. Моя первоначальная проблема заключалась в том, что Центр программного обеспечения Ubuntu не открывался. Я обнаружил, что Диспетчер обновлений и Диспетчер пакетов Synaptic также не удалось открыть. Все они выдавали ошибку в соответствии с:

"installArchives() failed: dpkg: error: reading package info file '/var/lib/dpkg/available': Input/output errorError in function:"

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

12
задан 11 January 2015 в 21:05

2 ответа

Я решил проблему с помощью этих инструкций .

Итак, решение следующее:

  1. Перейдите в / var / lib / dpkg Каталог
  2. Сделайте резервную копию файла статуса
  3. Отредактируйте файл статуса
  4. Найдите пакет, который выдал ошибку
  5. Просто удалите строки из этого пакета (но пусть все остальные строки, которые касаются других пакетов, даже если они содержат сломанный пакет в их полях «Заменяет» или «Зависит»)

    […]

  6. Сохранить изменения в файле status

  7. Выполнить: sudo dpkg --configure -a
  8. Принудительно переустановить недостающие зависимости (потому что теперь , есть некоторые):

     sudo apt-get -f install
     

    Я думаю, что если сломанный пакет не зависит от какого-либо другого пакета (может быть редко), просто переустановите его:

     sudo apt-get install the_package
     
  9. Теперь все в порядке, можно обновлять, обновлять или устанавливать новые пакеты!

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

Мне пришлось повторить шаги 4–8 три раза (каждый раз ошибка была бы такой же, только с другим пакетом. ). Наконец, когда все пакеты были удалены, я смог переустановить их, и это устранило мою проблему.

17
ответ дан 11 January 2015 в 21:05

Может случиться так, что диск поврежден inodes.

Для Live CD запустите эту команду

sudo fdisk -l

запишите диск и раздел, это может быть / dev / dsb1 затем исправьте его:

sudo fsck -y /dev/sdb1

Перезагрузите и вернитесь в систему

sudo apt-get -f install
sudo apt-get update
sudo apt-get upgrade
2
ответ дан 11 January 2015 в 21:05

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

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