Вопрос или проблема
каждый раз, когда я пытаюсь установить или обновить что-то, появляется эта ошибка
dpkg: ошибка: не удалось открыть файл информации о пакете `/var/lib/dpkg/available' для чтения: Нет такого файла или каталога
E: Подпроцесс /usr/bin/dpkg вернул код ошибки (2)
откройте терминал и введите эти команды по одной
sudo dpkg --configure -a
sudo apt-get -f install
sudo apt-get --fix-missing install
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
это должно исправить ситуацию.
База данных available
может быть пустой с очень небольшим ущербом, она просто должна существовать. Просто создайте ее как пустой файл с помощью
sudo touch /var/lib/dpkg/available
Ответ или решение
Проблема установки и обновления программ: Ошибка dpkg
При попытке установить или обновить программное обеспечение на вашей системе Linux вы столкнулись с ошибкой:
dpkg: error: failed to open package info file `/var/lib/dpkg/available' for reading: No such file or directory
E: Sub-process /usr/bin/dpkg returned an error code (2)
Эта ошибка указывает на то, что пакетный менеджер dpkg
не может найти файл /var/lib/dpkg/available
, который необходим для обработки информации о доступных пакетах. В данной статье мы рассмотрим шаги по устранению данной проблемы.
Шаги по устранению неисправности
-
Проверка ошибок в
dpkg
Первоначально начнем с команды, которая поможет нам уточнить текущее состояние
dpkg
:sudo dpkg --configure -a
Эта команда попытается завершить настройку всех пакетов, которые были неполностью установлены. Если есть поврежденные пакеты, вы сможете увидеть, какие из них требуют внимания.
-
Исправление зависимостей
Если шаг 1 не сработал, попробуйте исправить потенциальные зависимости:
sudo apt-get -f install
Эта команда автоматически обработает установку всех зависимостей, которые могут отсутствовать.
-
Фиксация отсутствующих пакетов
Если предыдущие команды не принесли результатов, выполните следующую команду:
sudo apt-get --fix-missing install
Это может помочь восстановить отсутствующие или поврежденные пакеты.
-
Очистка кэша пакетов
Если проблема не устранена, так же стоит выполнить команды по очистке кэша пакетов:
sudo apt-get autoclean sudo apt-get clean sudo apt-get autoremove
Эти команды помогут удалить временные файлы и неиспользуемые пакеты, что может освободить место и устранить конфликты.
-
Восстановление файла
available
Если ошибка продолжает проявляться, возможно, файл
/var/lib/dpkg/available
был случайно удален. В таком случае, вам нужно создать его вручную. Для этого выполните:sudo touch /var/lib/dpkg/available
Этот шаг создаст пустой файл, который позволит
dpkg
функционировать. Обратите внимание, что данные о доступных пакетах будут недоступны до тех пор, пока вы не обновите информацию о пакетах. -
Обновление списка пакетов
Для восстановления информации о доступных пакетах выполните:
sudo apt-get update
Это обновит списки пакетов и заполняет новый файл
available
актуальной информацией.
Заключение
Следуя указанным шагам, вы сможете устранить ошибку, связанную с установкой и обновлением программ на вашей системе Linux. Если проблема сохраняется даже после выполнения всех вышеуказанных действий, возможно, стоит проверить системные журналы на наличие дополнительных подсказок о характере ошибки.
Подводя итог, это поможет вам вернуть нормальное функционирование системы управления пакетами и обеспечить стабильность работы вашего программного обеспечения. Не забывайте регулярно проверять и обновлять вашу систему, чтобы избежать подобных проблем в будущем.