Почему «yum update» терпит неудачу со многими дубликатами, после многих месяцев отсутствия обновлений?

После многих месяцев (> 6) без обновления программного обеспечения я вошел в состав экземпляров EC2:

Linux version 2.6.32-358.23.2.el6.x86_64 (mockbuild@x86-022.build.eng.bos.redhat.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Sat Sep 14 05:32:37 EDT 2013 

а затем попытался сделать обычное yum-update:

 # yum update 

Ну, это не удалось с такими ошибками:

 --> Finished Dependency Resolution Error: Package: coreutils-libs-8.4-19.el6_4.2.x86_64 (@rhui-us-east-1-rhel-server-releases) Requires: coreutils = 8.4-19.el6_4.2 Removing: coreutils-8.4-19.el6_4.2.x86_64 (@rhui-us-east-1-rhel-server-releases) coreutils = 8.4-19.el6_4.2 Updated By: coreutils-8.4-31.el6_5.1.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-31.el6_5.1 Available: coreutils-8.4-9.el6.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-9.el6 Available: coreutils-8.4-13.el6.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-13.el6 Available: coreutils-8.4-16.el6.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-16.el6 Available: coreutils-8.4-19.el6.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-19.el6 Available: coreutils-8.4-19.el6_4.1.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-19.el6_4.1 Available: coreutils-8.4-31.el6.x86_64 (rhui-REGION-rhel-server-releases) coreutils = 8.4-31.el6 Error: Package: abrt-addon-python-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) Requires: abrt = 2.0.8-16.el6_4.1 Removing: abrt-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) abrt = 2.0.8-16.el6_4.1 Updated By: abrt-2.0.8-21.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-21.el6 Available: abrt-1.1.13-4.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.13-4.el6 Available: abrt-1.1.16-3.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.16-3.el6 Available: abrt-2.0.4-14.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.4-14.el6 Available: abrt-2.0.8-6.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6 Available: abrt-2.0.8-6.el6_3.2.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6_3.2 Available: abrt-2.0.8-15.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-15.el6 Error: Package: abrt-addon-ccpp-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) Requires: abrt = 2.0.8-16.el6_4.1 Removing: abrt-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) abrt = 2.0.8-16.el6_4.1 Updated By: abrt-2.0.8-21.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-21.el6 Available: abrt-1.1.13-4.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.13-4.el6 Available: abrt-1.1.16-3.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.16-3.el6 Available: abrt-2.0.4-14.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.4-14.el6 Available: abrt-2.0.8-6.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6 Available: abrt-2.0.8-6.el6_3.2.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6_3.2 Available: abrt-2.0.8-15.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-15.el6 Error: Package: abrt-addon-kerneloops-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) Requires: abrt = 2.0.8-16.el6_4.1 Removing: abrt-2.0.8-16.el6_4.1.x86_64 (@rhui-us-east-1-rhel-server-releases) abrt = 2.0.8-16.el6_4.1 Updated By: abrt-2.0.8-21.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-21.el6 Available: abrt-1.1.13-4.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.13-4.el6 Available: abrt-1.1.16-3.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 1.1.16-3.el6 Available: abrt-2.0.4-14.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.4-14.el6 Available: abrt-2.0.8-6.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6 Available: abrt-2.0.8-6.el6_3.2.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-6.el6_3.2 Available: abrt-2.0.8-15.el6.x86_64 (rhui-REGION-rhel-server-releases) abrt = 2.0.8-15.el6 Error: Package: glibc-devel-2.12-1.107.el6_4.5.x86_64 (@rhui-us-east-1-rhel-server-releases) Requires: glibc-headers = 2.12-1.107.el6_4.5 Removing: glibc-headers-2.12-1.107.el6_4.5.x86_64 (@rhui-us-east-1-rhel-server-releases) glibc-headers = 2.12-1.107.el6_4.5 Updated By: glibc-headers-2.12-1.132.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.132.el6 Available: glibc-headers-2.12-1.7.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.7.el6 Available: glibc-headers-2.12-1.7.el6_0.3.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.7.el6_0.3 Available: glibc-headers-2.12-1.7.el6_0.4.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.7.el6_0.4 Available: glibc-headers-2.12-1.7.el6_0.5.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.7.el6_0.5 Available: glibc-headers-2.12-1.25.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.25.el6 Available: glibc-headers-2.12-1.25.el6_1.3.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.25.el6_1.3 Available: glibc-headers-2.12-1.47.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.47.el6 Available: glibc-headers-2.12-1.47.el6_2.5.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.47.el6_2.5 Available: glibc-headers-2.12-1.47.el6_2.9.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.47.el6_2.9 Available: glibc-headers-2.12-1.47.el6_2.12.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.47.el6_2.12 Available: glibc-headers-2.12-1.80.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6 Available: glibc-headers-2.12-1.80.el6_3.3.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6_3.3 Available: glibc-headers-2.12-1.80.el6_3.4.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6_3.4 Available: glibc-headers-2.12-1.80.el6_3.5.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6_3.5 Available: glibc-headers-2.12-1.80.el6_3.6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6_3.6 Available: glibc-headers-2.12-1.80.el6_3.7.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.80.el6_3.7 Available: glibc-headers-2.12-1.107.el6.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.107.el6 Available: glibc-headers-2.12-1.107.el6_4.2.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.107.el6_4.2 Available: glibc-headers-2.12-1.107.el6_4.4.x86_64 (rhui-REGION-rhel-server-releases) glibc-headers = 2.12-1.107.el6_4.4 You could try using --skip-broken to work around the problem ** Found 143 pre-existing rpmdb problem(s), 'yum check' output follows: 

Прочитав несколько статей, я испробовал несколько вещей, чтобы исправить проблему:

  • Ran yum clean all , а затем yum update .
  • Ran rpmdb --rebuilddb , затем package-cleanup --dupes , затем package-cleanup --cleandupes .
  • Ran yum-complete-transaction и т. Д.

Во всех случаях я оказался там же. Одна статья предположила, что у меня могут быть конфликтующие пакеты для glibc. В любом случае, я не могу сказать, что происходит. Должен ли я повторить мой EC2 или у кого-то есть решение?

Благодаря!

6 Solutions collect form web for “Почему «yum update» терпит неудачу со многими дубликатами, после многих месяцев отсутствия обновлений?”

Для меня работала sudo package-cleanup --cleandupes

Устранение yum-обновлений для моей среды RHEL 6.4 (Fedora 12+) было трудоемким, но в конечном итоге успешным. Я хочу поделиться тем, что я сделал, и что могло быть лучше.

  1. Я идентифицировал все дубликаты пакетов. Предположительно, package-clean --dupes делает то же самое. Еще одной полезной командой было rpm -qa package-name , которое идентифицировало дубликаты пакетов с помощью префикса или общего имени пакета.
  2. Затем я удалил все версии coreutils и coreutils-lib , более или менее следуя этой последовательности команд: (i) rpm -e --nodeps coreutils , (ii) rpm -e --nodeps coreutils-lib , (iii) updatedb , и (iv) yum clean all . ПРИМЕЧАНИЕ: удаление coreutils обычно не рекомендуется, так как оно делает невозможным выполнение нескольких других команд.
  3. Затем я переустановил последние версии coreutils и coreutils-lib : yum install coreutils coreutils-lib
  4. На данный момент у меня все еще было 100 дублированных пакетов. К сожалению, мой EC2 работает с микро-экземпляром, и в нескольких прогонах package-cleanup --cleandupes я столкнулся с проблемами распределения памяти, а также с ядрами. Таким образом, мне пришлось вручную удалить каждый дублирующий пакет, используя ранее упомянутую команду: rpm -e --nodeps package-name .
  5. Как только дублированные пакеты были удалены, я запустил (i) updatedb , (ii) yum clean all и (iii) yum update .

После всего этого все работает.

ПРЕДЛОЖЕНИЕ: было бы полезно, если бы была команда типа «yum self-solve». Он будет проводить политику наилучшей оценки того, какие пакеты следует удалить и что сохранить, чтобы обновить устаревшую среду. Если такая команда уже существует, сообщите мне.

Мне тоже я когда-то не смог обновить свою систему ( package-cleanup или yum clean all тоже не помогло). Через два дня я смог.

Если вы не добавили неофициальные репозиции к вашему дистрибутиву, это может быть проблема вашего зеркала или просто плохое / неполное обновление пакета в репозитории (который, вероятно, будет исправлен в ближайшее время).

Просто выбросьте это, если это поможет кому-то идти вперед. Я включил репо-обновление fedora-updates-testing, потому что мне нужно было что-то оттуда, чтобы разрешить сбой содержимого x-window. Я забыл отключить его потом, пока на обновление после довольно длительного периода я не получил базиллионов дубликатов. Отключение репо sudo vi /etc/yum.repos.d/fedora-updates-testing.repo и изменение включено = 1 на enabled = 0 избавилось от всех дубликатов, а обновление работало нормально.

Что сработало для меня:

 yum distro-sync package-cleanup --cleandupes --skip-broken yum update 

Ключ, который, казалось, исправить, был первой строкой – yum distro-sync

Регистрация на спутниковый сервер сработала для меня, раньше он указывал на redhat 5.x-канал и регистрировался до 6-го канала, исправил проблему.

  • Могу ли я использовать ярлыки внутри репозитория для yum?
  • Каков правильный способ разрешения конфликта? (Ошибка: конфликты p11-kit-доверия с nss-3.13.3-6.el6.x86_64)
  • Как найти и установить указать пакет по команде?
  • Что такое debian, эквивалентное этой команде repoquery?
  • Эквивалент APTonCD для Fedora
  • Получение ошибки конфигурации для yum в CentOS
  • Как использовать yum для получения всех RPM-запросов, для автономного использования?
  • Как добавить в Fedora репозитории RPM Fusion и livna?
  • Могу ли я переместить 0yum-cron из cron.daily в montly?
  • управление пакетами rpm в системе без доступа inet
  • Я установил python 2.7 на сервер RHEL6, хочу вернуться к 2.6
  • Interesting Posts

    неспособность установить связь с использованием grabserial

    Изменить временную метку на определенную дату, сохраняя существующее время

    Каким должен быть размер буфера для команды sort?

    incrontab по имени папки, содержащей линейные каналы

    Vim auto line-break работает не так, как ожидалось (обновление: проблема с неокомплектом)

    Использование внешнего жесткого диска для загрузки 2 разных компьютеров с различным оборудованием

    Получите имя файла, из которого записывается запись

    Как заставить звук работать в chroot (Linux на Android)

    pdksh отсутствует в RHEL 6 и CentOS 6?

    Как передать файл с удаленного сервера на локальный компьютер

    Отправка почты Sendmail / procmail / Exchange

    Разница между gawk и awk

    Замените передачу веб-камеры изображением с жесткого диска

    Как читать / писать на устройство tty *?

    Список недавно измененных файлов указанного пользователя на весь диск?

    Linux и Unix - лучшая ОС в мире.