У меня странная проблема с yum, работающим на одном сервере и не работающим на другом сервере, который должен быть идентичным.
Симптомом является то, что после запуска createrepo в каталоге, содержащем RPM (и создания определения с именем «foo» в /etc/yum.repos.d):
yum list available --disablerepo=* --enablerepo=foo
показывает все 23 RPM на одном сервере, но только 7 из них на другом.
На сервере, который показывает только 7 RPM, я все еще могу увидеть недостающие RPM, запустив
yum search <package_name> --disablerepo=* --enablerepo=foo
Я проверил:
Итак, что может отличаться между серверами, чтобы создать эту проблему?
Если пакет установлен, он не будет отображаться как доступный. Вы можете указать --showduplicates
возможность увидеть все, что доступно в репо, независимо от того, установлено оно или нет. Я бы посоветовал сравнить вывод следующей команды, запущенной на обоих серверах. Если оба сервера обращаются к одному и тому же репо, результат должен быть одинаковым:
yum list available --disablerepo=* --enablerepo=foo --showduplicates
Или вы можете попробовать это
yum list --showduplicates | grep foo
В «yum list» перечислены все установленные или доступные пакеты. «--Showduplicates» показывает все пакеты во всех включенных репозиториях, даже если они были замечены в другом репо, тогда просто введите имя репозитория с помощью grep, чтобы увидеть, что предоставляется вашим локальным репо.