yum error "Не удается получить metalink для хранилища: epel. Пожалуйста, проверьте его путь и попробуйте снова", обновляя ContextBroker
Я пытаюсь обновить Orion ContextBroker с помощью команды yum install contextBroker. К сожалению, я получаю следующую ошибку:
Загруженные плагины: fastestmirror, refresh-packagekit, безопасность Загрузка
скорость зеркала из кэшированного хост-файла
Ошибка: не удается получить металинк для хранилища: epel. Пожалуйста, проверьте его путь и попробуйте снова
Что может быть не так?
27 ответов
Я решил эту проблему, редактируя оба /etc/yum.repos.d/epel.repo
а также /etc/yum.repos.d/epel-testing.repo
файлы, комментируя все записи, начинающиеся с mirrorlist=...
и раскомментируйте все записи, начинающиеся с baseurl=...
,
Вам просто нужно обновить пакет ca-Certificates. Перед этим просто отключите все репо с https, которые не работают. Вот почему решение с комментированием mirrorlist или использованием http вместо https также будет работать.
Например, если вам нужно отключить только epel repo:
yum --disablerepo=epel -y update ca-certificates
Это также поможет wget, curl и всему, что использует SSL-сертификаты.
Используйте эту команду:
sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
или альтернативно используйте команду
vi /etc/yum.repos.d/epel.repo
перейти к строке № 4 и изменить URL-адрес с
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
в
mirrorlist=http://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
Обновление curl сработало у нас. Каким-то образом yum использует curl для своих транзакций.
yum update curl --disablerepo=epel
Я думаю, это должно сработать. Я решил свою проблему с этим.
$ sudo yum очистить все
$ sudo yum --disablerepo="epel" обновить nss
Для моего случая комментируя mirrorlist
и uncomenting записи с baseurl
не работаю. Я заметил, что проблема была с https
внутри .repo
Федора файлы. Я решил это, зайдя в /etc/yum.repository.d
и заменить все https
с http
в разных.repo файлах. Это сработало!!
Проверьте, имеете ли вы доступ к интернет-прокси, вам нужно добавить адрес интернет-прокси в конфигурацию yum.
добавлять
proxy=http://ip:port to /etc/yum.conf
Шаги прохождения
Выполнение следующей команды обновит репо для использования HTTP, а не HTTPS:
sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
После этого вы сможете обновить эту команду:
yum -y update
Вы можете столкнуться с этим сообщением / ошибкой после установки epel-release. Быстрое решение состоит в том, чтобы обновить ваши сертификаты SSL:
yum -y upgrade ca-certificates
Скорее всего, вышеуказанная ошибка также может возникнуть при обновлении сертификата, если это так, просто отключите epel
repo т.е. используйте следующую команду:
yum -y upgrade ca-certificates --disablerepo=epel
Как только сертификаты будут обновлены, вы сможете нормально использовать yum, даже репозиторий epel будет работать нормально. В случае, если вы получаете ту же ошибку для другого репо, просто поместите его имя против --disablerepo=<repo-name>
флаг.
Примечание: использовать sudo
если ты не root
пользователь.
Я решил эту проблему этим решением.
вы просто измените в этом файле /etc/yum.repos.d/epel.repo
mirrorlist = изменить этот URL-адрес https на http
baseurl = изменить этот URL-адрес https на http
Для ящиков, которые не имеют доступа в Интернет, вы можете удалить epel
репозиторий:
yum remove epel-release --disablerepo=epel
Это случилось со мной, когда я случайно установил epel-release
с помощью rpm
на прод-коробке.
Я пробовал большинство из этих решений, и ни одно из них не помогло мне.
Единственное, что у меня сработало, - это отключить и удалить оскорбительное репо.
sudo yum --disablerepo=epel\* remove epel-release.noarch
Я столкнулся с той же проблемой, несмотря на то, что пакет CA-сертификаты является актуальной. Зеркало https://mirrors.fedoraproject.org/ в настоящее время подписано DigiCert High Assurance EV Root CA
который включен в мой ca-bundle
$ grep -A 3 "DigiCert High" /etc/ssl/certs/ca-bundle.crt
# DigiCert High Assurance EV Root CA
-----BEGIN CERTIFICATE-----
MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
Причиной, по которой в моем случае не удалось установить соединение https, было то, что системная дата была установлена на 2002 год, в котором DigiCert High Assurance EV Root CA
не является (пока) действительным.
$ date
Di 1. Jan 11:10:35 CET 2002
Изменение системного времени решило проблему.
Все вышеперечисленное у меня не сработало, но перестройка базы данных rpm с помощью следующей команды:
sudo rpm --rebuilddb
Спасибо всем за помощь.
Я решил это, зайдя в /etc/yum.repository.d/. Для моего случая я закомментирую зеркальный список и uncomenting записи с baseurl. а также добавил sslverify = false.
https://serverfault.com/questions/637549/epel-repo-for-centos-6-causing-error
Я решил эту проблему, изменив записи https в файле epel.repo на http.
В моем случае, когда я закомментировал зеркальный список, ошибка исчезла, но репо также не работало, поэтому я вручную указываю правильный базовый URL-адрес в /etc/yum.repos.d/epel.repo
как показано ниже
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
baseurl=http://iad.mirror.rackspace.com/epel/7Server/x86_64/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
baseurl=http://iad.mirror.rackspace.com/epel/7Server/x86_64/debug/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source
baseurl=http://iad.mirror.rackspace.com/epel/7Server/SRPMS/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
Я получал эту ошибку при запуске виртуальной машины виртуального бокса Centos 7 в Windows 10. После долгих ошибок я обнаружил, что ошибка исходила из-за того, что yum пытался использовать IPV6, поэтому мне пришлось отредактировать /etc/yum.conf, добавив:
ip_resolve = 4
Надеюсь, это поможет кому-то другому тратить на эту ошибку меньше времени, чем мне!
Прежде всего, проверьте конфигурацию "yum" в /etc/yum.conf. Затем попробуйте советы, приведенные выше :-)
Ничто из этого не сработало для меня (я даже не пробовал такие хаки, как ручное редактирование файла репо).
Однако это сработало после простого yum update -y
Другая возможная причина - ваша архитектура не поддерживается. Я столкнулся с этим, потому что мне предоставили виртуальную машину CentOS, я хотел установить EPEL и не мог этого сделать.
Оказывается, виртуальная машина была CentOS 7 i386, архитектура которой, по-видимому, больше не поддерживается EPEL. Думаю, единственное средство в этом случае - переустановить.
Исправлена моя, как это:
yum install elfutils-default-yama-scope-0.168-8.el7.noarch --disablerepo=epel
yum install nss-pem -disablerepo=epel
yum reinstall ca-certificates --disablerepo=epel
yum clean all
rm -rf /var/cache/yum
yum update`
Пытаться
yum clean all --enablerepo=*
потом
yum update --disablerepo=epel
Для устаревшей CentOS 6 я использовал это в /etc/yum.repos.d/epel.repo
baseurl=https://d2lzkl7pfhq30w.cloudfront.net/pub/archive/epel/6/$basearch
У меня это работает на Centos 7:
yum update
yum install epel-release
sed -i "s/metalink/#metalink/" /etc/yum.repos.d/epel.repo
sed -i "s/#baseurl=http:\/\/download/baseurl=https:\/\/archives/" /etc/yum.repos.d/epel.repo
Изменение URL-адреса зеркального списка с https на http устранило проблему для меня.
Я решил свою проблему, раскомментировав
baseurl
и комментирование
metalink
линии в
/etc/yum.repos.d/epel.repo
.