База знаний

Дублирующиеся пакеты в YUM (duplicate packages in yum)

  • 0

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

В случае выполнения команды сканирования системных пакетов на дублирующиеся пакеты, я получил такой вывод:

# package-cleanup --dupes
kbd-misc-1.15.5-11.el7.noarch
kbd-misc-1.15.5-13.el7.noarch
cyrus-sasl-md5-2.1.26-17.el7.x86_64
cyrus-sasl-md5-2.1.26-21.el7.x86_64
iputils-20160308-10.el7.x86_64
iputils-20121221-6.el7_1.1.x86_64
libhbalinux-1.0.16-4.el7.x86_64
libhbalinux-1.0.17-2.el7.x86_64
totem-3.22.1-1.el7.x86_64
totem-3.8.2-5.el7.x86_64
numactl-libs-2.0.9-6.el7_2.x86_64
numactl-libs-2.0.9-5.el7_1.x86_64
libvirt-daemon-driver-nwfilter-1.2.8-16.el7_1.5.x86_64
libvirt-daemon-driver-nwfilter-3.2.0-14.el7_4.3.x86_64
rsyslog-8.24.0-12.el7.x86_64
libpurple-2.10.11-5.el7.x86_64
libpurple-2.10.7-22.el7.x86_64
libsndfile-1.0.25-10.el7.x86_64
libsndfile-1.0.25-9.el7.x86_64
libsndfile-1.0.25-9.el7.i686
libsndfile-1.0.25-10.el7.i686
abrt-2.1.11-48.el7.centos.x86_64
abrt-2.1.11-22.el7.centos.0.1.x86_64


Вывод не полный, но фактически было более 900 пакетов, которые конфликтовали между собой

Причина: На ПК более года не обновляли систему, затем решили это проделать, запустили команду yum update -y но ждать надоело и выключили принудительно ПК в процессе установки новых пакетов :facepalm:. Теоретически данный случай может произойти также в случае аварийного отключения электропитания.

Последствия: Дублирующиеся и конфликтующие старые пакеты с новыми. При этом система продолжала штатно работать. За исключением только, что не смогла загрузиться с обновлённого ядра.

Решение: В случае если таких пакетов не много то в Интернет источниках пишут, что данную проблему можно решить командой:

package-cleanup --cleandupes


Но в "моём" случае это не помогло и решалась проблема очень нудно и долго.

1. Выполнял команду package-cleanup --dupes

2. Выбираем пакеты, которые более старые и удаляем их:

rpm -e kbd-misc-1.15.5-11.el7.noarch cyrus-sasl-md5-2.1.26-17.el7.x86_64 

3. В случае получения ошибки связанные с зависимостями с другими пакетами, выполняем принудительное удаление старого пакета из RPM базы:

rpm -e --nodeps --justdb abrt-2.1.11-22.el7.centos.0.1.x86_64


4. По завершению данного процесса выполняем очистку кэша и пробуем обновить пакеты:

yum clean all && yum update -y

Помог ли вам данный ответ?