Я пытался использовать yum в кластере Centos 7 для установки пакета и получил следующую ошибку:
One of the configured repositories failed (Unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this: [...]
Я попробовал несколько предложенных в интернете решений ( yum clean all
удаление кэша, удаление баз данных репозитория и их пересоздание и т. д.), но ничего не помогло.
После нескольких часов поиска неисправностей мне удалось найти обходной путь. В файле /etc/yum.repos.d/CentOS-Base.repo
я раскомментировал baseurl
строку и заменил $releasever
переменную на "7" (т.е. версию ОС). По какой-то причине yum не смог распознать $releasever и не смог найти репозиторий.
Поэтому вместо:
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
У меня есть:
baseurl=http://mirror.centos.org/centos/7/os/$basearch/
после чего yum update и yum install, похоже, работают нормально. Однако я не знаю, является ли это постоянным решением проблемы.
Может ли кто-нибудь сказать мне, что происходит и есть ли более правильный способ решить эту проблему?
Спасибо.
решение1
Недавно у меня была эта проблема. Настройка releasever
мне помогла. Я также обнаружил, что могу исправить distroverpkg
настройку в /etc/yum.conf
.
Я установил следующее:
distroverpkg=centos-release
Мне это помогло.
решение2
Я нашел решение.
yum --installroot=/usr/local install nginx --releasever=7
но почему это не удалось, до сих пор не выяснилось.