Как найти и исправить сломанные пакеты в Linux
Менеджеры пакетов в Linux позволяют контролировать установку и удаление пакетов. В дополнение к этому, менеджеры пакетов помогут вам найти сломанные пакеты в вашей системе и переустановить их, чтобы исправить различные проблемы, связанные с пакетами Linux.
Если вы не знаете, какие команды использовать для поиска неработающих пакетов в Linux, то это руководство для вас. Мы кратко обсудим сломанные пакеты, как вы можете проверить, есть ли в вашей системе сломанные пакеты, и как правильно их переустановить.
Что такое сломанные пакеты?
Когда вы устанавливаете новый пакет в Linux, менеджер пакетов вашей системы отвечает за весь процесс установки. Эти менеджеры пакетов имеют встроенные методы для обработки исключений и ошибок. Но иногда, в случае непредвиденных проблем, установка останавливается и не устанавливается полный пакет. Такие пакеты в Linux называются сломанными пакетами.
Менеджеры пакетов, такие как Apt, не разрешают дальнейшую установку пакетов, если в системе обнаружен неработающий пакет. В такой ситуации ремонт сломанных пакетов – единственный выбор.
Как найти и исправить сломанные пакеты
Каждый менеджер пакетов обрабатывает разные типы пакетов. Например, DNF и Yum работают с RedHat Package Manager (RPM) для загрузки и установки пакетов RPM. Точно так же Apt действует как оболочка внешнего интерфейса для базового программного обеспечения dpkg в дистрибутивах на основе Debian.
Переустановка битых пакетов в Debian
Apt – это менеджер пакетов по умолчанию, который предустановлен в каждом дистрибутиве на основе Debian. Помимо Apt, пользователи Debian также могут загружать и устанавливать пакеты вручную с помощью dpkg .
Чтобы исправить сломанные пакеты в дистрибутивах на основе Debian с помощью Apt:
- Откройте свой терминал, нажав Ctrl + Alt + T на клавиатуре, и введите:
sudo apt --fix-missing update
- Обновите пакеты в вашей системе:
sudo apt update
- Теперь принудительно установите поврежденные пакеты с помощью флага -f . Apt автоматически найдет сломанные пакеты в вашей системе и переустановит их из официального репозитория.
sudo apt install -f
Если вышеупомянутые шаги не работают для вас, вы можете попробовать решить проблему с помощью dpkg.
- Заставьте dpkg перенастроить все ожидающие пакеты, которые уже распакованы, но нуждаются в настройке. Флаг -a в команде означает Все .
sudo dpkg --configure -a
- Соедините grep с dpkg, чтобы получить список всех пакетов, помеченных dpkg как обязательные .
sudo dpkg -l | grep ^..r
- Используйте флаг –remove, чтобы удалить все поврежденные пакеты.
sudo dpkg --remove --force-remove-reinstreq
- Очистите кеш с помощью Apt clean.
sudo apt clean
- Обновите системные пакеты, используя следующую команду.
sudo apt update
В Fedora / CentOS
Хотя Yum и Dnf отлично подходят для управления сломанными пакетами, иногда возникают проблемы, поскольку в системе Linux установлены тысячи пакетов. В таких ситуациях вы можете использовать RPM (базовый менеджер пакетов для Fedora и CentOS), чтобы быстро исправить такие проблемы.
- Проверьте все пакеты в вашей системе с помощью флага -V .
sudo rpm -Va
- Вы увидите длинный список, содержащий все пакеты, установленные в вашей системе.
- Переустановите пакет, который, по вашему мнению, может вызывать неисправность пакета.
sudo dnf --refresh reinstall packagename
Вышеупомянутые шаги очень неудобны – определить, какой пакет вызывает проблему из списка сотен, утомительно. Хотя RPM – мощный менеджер пакетов, и вы редко будете сталкиваться с такими проблемами, знание того, как исправить эти проблемы, по-прежнему важно, если вы столкнетесь с подобной ситуацией в ближайшем будущем.
Управление пакетами в дистрибутивах Linux
Менеджеры пакетов в Linux способны решать большинство проблем, включая неудачные установки. Но иногда возникают различные проблемы, которые можно решить только интуитивно. Решение для исправления поврежденных пакетов состоит из нескольких шагов – определение поврежденного пакета, его переустановка и обновление списка пакетов системы.
В Интернете доступно бесчисленное количество дистрибутивов Linux, которые стоит попробовать, но в глубине души каждый из них имеет аналогичную основу. Среды рабочего стола выделяют каждый дистрибутив, обеспечивая уникальный пользовательский интерфейс. Выбор идеальной среды рабочего стола, которая соответствует вашему вкусу, должен быть вашим приоритетом, если вы, наконец, решили продолжить работу с Linux.