Удаление RPM-пакета вместе с зависимостями

Abdula аватар

YUM-плагин для удаления пакета вместе с зависимостями

Стандартное удаление пакетов с помощью команды yum erase зачастую оставляет "хвосты" - зависимости и библиотеки, которые уже больше не используются системой.

Чтобы при удалении пакетов полностью очищать систему от неиспользуемых зависимостей, нужно добавить в помощь к yum плагин yum-plugin-remove-with-leaves
Этот плагин удаляет неиспользуемые зависимости, которые были инсталлированы в систему при установке пакета, помогая поддерживать систему в чистоте от неиспользуемых библиотек и пакетов. Находится плагин в репозитории @base

Устанавливаем плагин:

yum install yum-plugin-remove-with-leaves

Плагин добавляет два параметра к команде remove:
--leaves-exclude-bin - Не удалять список пакетов, содержащих исполняемые бинарные файлы.
--remove-leaves - Удалить неиспользуемые зависимости для других пакетов.

Для использования данного плагина по умолчанию необходимо внести изменения в конфигурационный файл /etc/yum/pluginconf.d/remove-with-leaves.conf

После установки плагина этот файл выглядит следующим образом:

[main]
enabled = 1
#exclude_bin = 1
#remove_always = 1

Соответственно необходимо раскомментировать и установить в значения 0 или 1 по своему усмотрению.

Для постоянного использования с удалением бинарных файлов файл должен иметь следующий вид:

[main]
enabled = 1
exclude_bin = 0
remove_always = 1

Соответственно теперь при выполнении команды, показанной ниже, мы удаляем как сам пакет, так и все зависимости, которые он за собой притащил:

yum --remove-leaves remove %package_name%

Кроме того, в хелпе yum в разделе "Опции модуля" появляются два новых ключа:

--leaves-exclude-bin do not remove leaf packages which contain executable binaries
--remove-leaves remove dependencies no longer needed by any other packages

которыми можно оперативно пользоваться, не прибегая к редактированию конфигурационного файла.

RSS-материал