Обычно удаление пакета с использованием системы управления пакетами YUM приведет к удалению этого пакета вместе со своими зависимостями.
Однако некоторые зависимости не будут удалены в системе, это то, что мы можем назвать «неиспользуемыми зависимостями» или (так называемыми «leaf пакетами» в соответствии с справочной страницей YUM).
В этой статье мы объясним два способа удаления пакета вместе со своими зависимостями с помощью диспетчера пакетов YUM в дистрибутивах CentOS и RHEL.
1. Использование опции Autoremove YUM
Этот метод требует, чтобы вы добавили директиву clean_requirements_on_remove в главный файл конфигурации YUM /etc/yum.conf.
Вы можете использовать свой любимый редактор командной строки, чтобы открыть его для редактирования, как показано ниже:
# vim /etc/yum.conf
Затем добавьте следующую строку в файл /etc/yum.conf, как показано на следующем рисунке.
Значение один означает, что директива включена ,а ноль означает иначе.
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=19&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
clean_requirements_on_remove=1
Сохраните изменения и выйдите из файла.
Теперь, каждый раз, когда вы удаляете пакеты, YUM просматривает зависимости каждого пакета и удаляет их, если они больше не нужны никаким другим пакетам.
# yum autoremove
2: Использование плагина yum-plugin-remove-with-leaves
Это расширение удаляет любые неиспользуемые зависимости, которые были добавлены в установочный пакет, но не будет удаляться автоматически.
Он также поможет вам очистить систему от неиспользуемых библиотек и пакетов.
# yum install yum-plugin-remove-with-leaves
Если вы установили расширение, каждый раз, когда вы хотите удалить пакет, добавьте, например, флаг -remove-leaves.
# yum remove policycoreutils-gui --remove-leaves
Для получения дополнительной информации ознакомьтесь с справочной страницей YUM:
# man yum