Подтвердить что ты не робот

Yum error - пакет является дубликатом с

Когда я пытаюсь запустить yum update в поле CentOS 6.3, я получаю ошибки и говорю, чтобы запустить yum check. Выходной сигнал yum check:

➜  ~  yum check
Loaded plugins: fastestmirror
glibc-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-2.12-1.107.el6_4.4.x86_64
glibc-common-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-common-2.12-1.107.el6_4.4.x86_64
glibc-devel-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-devel-2.12-1.107.el6_4.4.x86_64
glibc-devel-2.12-1.107.el6_4.5.x86_64 has missing requires of glibc-headers = ('0', '2.12', '1.107.el6_4.5')
iputils-20071127-17.el6_4.2.x86_64 is a duplicate with iputils-20071127-17.el6_4.x86_64
nspr-4.9.5-2.el6_4.x86_64 is a duplicate with nspr-4.9.2-1.el6.x86_64
nss-3.14.3-4.el6_4.x86_64 is a duplicate with nss-3.14.0.0-12.el6.x86_64
nss-softokn-3.14.3-3.el6_4.x86_64 is a duplicate with nss-softokn-3.12.9-11.el6.x86_64
nss-util-3.14.3-3.el6_4.x86_64 is a duplicate with nss-util-3.14.0.0-2.el6.x86_64
tzdata-2013g-1.el6.noarch is a duplicate with tzdata-2013c-2.el6.noarch
2:xinetd-2.3.14-39.el6_4.x86_64 is a duplicate with 2:xinetd-2.3.14-38.el6.x86_64
Error: check all

Любая идея, как исправить эти пакеты? Я пробовал yum reinstall xinetd tzdata nss-util nss-softokn nss nspr iputils glibc glibc-common glibc-devel, но получил:

Ошибка: найдены проблемы с версией Multilib. Это часто означает, что корень        причина - это что-то другое, и проверка версий multilib - это просто        указывая, что есть проблема.

4b9b3361

Ответ 1

Для меня похоже, что вы перезагрузили свой компьютер (или он разбился), когда вы в процессе обновления пакетов. Итак, новые пакеты, где установлены, но старые пакеты, которые не удаляются.

Сначала посмотрите, есть ли у вас незавершенные транзакции: yum-complete-transaction

Если это не поможет, посмотрите на инструмент очистки пакета, который является частью пакета yum-utils.

очистка пакетов --dupes отображает дубликаты пакетов

очистка пакетов --cleandupes удаляет дубликаты пакетов

Но будьте осторожны с командой и создайте резервную копию перед удалением дубликатов.

Ответ 2

Так я исправил один сервер CentOS 7 с 471 дуплом.

Сначала я должен был установить утилиты yum:

yum install yum-utils

Попробовав yum-complete-транзакцию и другие вещи без везения, я отказался от транзакции с:

yum-complete-transaction --cleanup-only

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

package-cleanup --dupes | sort -u > dupes.out

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

cat dupes.out | grep -v 'Loaded plugins:' | sort -u | awk 'NR % 2 == 1' > uninstall.in

Затем я удалил из базы данных rpm старые версии:

for f in 'cat uninstall.in'; do rpm -e --nodeps -f --justdb $f; done

Наконец я смог продолжить обычное обновление системы:

yum upgrade

На некоторые вещи стоит обратить внимание:

  • В этом случае я внимательно изучил вывод "package-cleanup --dupes", чтобы убедиться, как создать список удаления.
  • Я попытался "переустановить более новый" подход, инвертируя список (awk 'NR% 2 == 0'), но там, где больше пакетов не было доступно в этой версии (сервер был оставлен таким образом в течение года).
  • Я думал об удалении из rpmdb более новых пакетов, поэтому после обновления следует переустановить все, но после проверки файлов, установленных в файловой системе, мне стало ясно, что новые версии были на месте, а в rpmdb остались только старые записи rpm. Может быть, ваш случай отличается.

Ответ 3

Мне удалось удалить все дубликаты с помощью yum shell:

  • Я сначала приказал удалить все пакеты с помощью remove foo-package-*
  • Затем закажите его для установки предыдущей версии, указав точную версию install foo-package-3.14.1-5.i386 foo-package-3.14.1-5.x86_64
  • Объявление транзакции run

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

Это работает даже для системных пакетов, таких как nss или yum.

Ответ 4

Попробуйте запустить:

yum reinstall package-newest-version

Ответ 5

Пару месяцев назад я тоже столкнулся с этой проблемой после обновления своей Fedora.

Я также попробовал утилиту package-cleanup, и она начала удалять необходимые библиотеки, делая мою рабочую станцию неработоспособной. К счастью, я мог переустановить Fedora, не удаляя мой домашний раздел.

Вчера возникла та же проблема, и я исправил ее, удалив старую версию дубликата.

Например: Я получил эти дубликаты:

  • oxygen-icon-theme-4.8.3-1.fc16.noarch является дубликатом с oxygen-icon-theme-4.8.2-1.fc16.noarch
  • sane-backends-libs-1.0.22-10.fc16.i686 является дубликатом с sane-backends-libs-1.0.22-8.fc16.i686

Я использовал yum remove sane-backends-libs-1.0.22-8.fc16.i686, а затем yum update.

Теперь все работает нормально.


из http://forums.fedoraforum.org/showthread.php?t=268328

Ответ 6

Например: я получил эти дубликаты: oxygen-icon-theme-4.8.3-1.fc16.noarch является> дубликатом с oxygen-icon-theme-4.8.2-1.fc16.noarch sane-backends-libs-1.0. 22-> 10.fc16.i686 является дубликатом с sane-backends-libs-1.0. 22- 8.fc16.i686

Я использовал 'yum remove sane-backends-libs-1.0. 22- 8.fc16.i686', а затем обновил yum.

Все работает нормально.

у меня тоже работает, спасибо micfan

Ответ 7

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

yum install yum-utils &&
package-cleanup –-cleandupes -y

подсказка: иногда вам нужно запустить package-cleanup –-cleandupes несколько раз