yum error Невозможно получить металик для репозитория: epel. Пожалуйста, проверьте его путь и попробуйте еще раз обновить ContextBroker

Я пытаюсь обновить Orion ContextBroker с помощью команды yum install contextBroker. К сожалению, я получаю следующую ошибку:

Загруженные плагины: fastestmirror, refresh-packagekit, security Loading

скорость зеркалирования из кэшированного файла хоста

Ошибка: не удается получить металик для репозитория: epel. Пожалуйста, проверьте его путь и попробуйте еще раз

Что могло пойти не так?


person JosepB    schedule 04.11.2014    source источник
comment
Предлагаемый шаг устранения неполадок: может ли ваша система curl -v https://mirrors.fedoraproject.org?   -  person mwfearnley    schedule 20.08.2019
comment
Выбранный ответ - это обходной путь, который не устраняет основную проблему, и на самом деле установка пакета может и дальше завершаться ошибкой. Я предлагаю отменить выбор лучшего ответа и позволить подсчету голосов отсортировать ответы до тех, которые сработали для большинства людей.   -  person Paul    schedule 07.05.2020


Ответы (23)


Я решил эту проблему, редактируя файлы /etc/yum.repos.d/epel.repo и /etc/yum.repos.d/epel-testing.repo, комментируя все записи, начинающиеся с mirrorlist=..., и раскомментировав все записи, начинающиеся с baseurl=....

person fgalan    schedule 04.11.2014
comment
В моем случае это исправление позволило yum успешно загрузить метаданные для репозитория epel, но попытка установить пакеты не удалась с [Errno 14] Peer cert cannot be verified or peer cert invalid. Правильным исправлением было обновление CA-сертификатов, как в ответе ниже. - person bain; 18.05.2018
comment
комментирование всех записей, начинающихся с metalink = ... и раскомментирование всех записей, начинающихся с baseurl = .... сработало для меня на RHEL7.1 - person Anurag Singh; 12.07.2019
comment
Пробовал твой метод, потом yum clean all && yum update сработало. Но не полностью, там сказано epel-release-7-11.noarch: [Errno 256] No more mirrors to try и т. Д. Итак, я попробовал yum update curl --disablerepo=epel, как предлагала sbetharia, и попробовал yum clean all && yum update снова, теперь, наконец, это сработало. - person Hosi Golden; 18.07.2019
comment
Работал у меня. Большое спасибо. - person tarekahf; 25.10.2019
comment
У меня не было mirrorlist= строк, но было metalink= строк, и их нужно было прокомментировать. - person JellicleCat; 22.04.2020
comment
Это принятый ответ, но, как некоторые из ответов могут подразумевать: по-видимому, этому может быть несколько возможных причин. Может быть, вики сообщества подойдет для того, чтобы перечислить их все? - person Chris2048; 16.10.2020

Вам просто нужно было обновить пакет ca-сертификатов. Перед этим просто отключите все репозитории с https, которые не работают. Вот почему решение с комментированием зеркального списка или использованием http вместо https также будет работать.

Например, если вам нужно отключить только репозиторий epel:

yum --disablerepo=epel -y update  ca-certificates

Это также поможет wget, curl и всем остальным, что использует сертификаты SSL.

person XoR    schedule 27.12.2014
comment
Это следует принять как правильный ответ, поскольку он диагностирует реальный источник проблемы, а не просто дает возможность ее решения. - person Horatio Alderaan; 23.01.2015
comment
Я тестировал это на бенто-боксе CentOS 6.5, и это действительно делает работу немного более надежной при работе yum clean all && yum makecache . Однако иногда это все равно не удается. Добавление повтора к моему скрипту сделало его еще более надежным. Я подозреваю, что некоторые зеркала ненадежны, и повторная попытка может дать другое зеркало, которое работает. Так что если сначала это не удастся, попробуйте еще раз! - person TrinitronX; 26.01.2015
comment
Интересно, как вы нашли это решение ... сообщение об ошибке было для меня довольно критичным - person Stéphane; 10.03.2015
comment
Что ж, это исходит из опыта, и да, сообщение непонятное :) - person XoR; 10.03.2015
comment
Мне это нужно, а также stackoverflow.com/a/31066100/41223, чтобы разобраться с моей проблемой. - person tzrlk; 15.05.2017
comment
убедитесь, что вы находитесь за корпоративным прокси, чтобы также установить его для https, например export https_proxy=<your proxy> - person Markus; 11.08.2017
comment
RPM epel-repo должен иметь CA-сертификаты, имеет зависимость !! - person Stéphane; 19.10.2017
comment
спасибо @Markus !!! - Я следил за всеми ответами (кроме тех, которые говорят об отключении https), и он все еще не работал, на самом деле проблема заключалась в том, что я установил только http_proxy, а не https_proxy, как глупо с моей стороны :) - person Adam Burley; 18.07.2019
comment
Мне также нужно было обновить curl (или одну из его зависимостей) - я получал SSL_ERROR_NO_CYPHER_OVERLAP при попытке curl https://mirrors.fedoraproject.org. - person mwfearnley; 20.08.2019
comment
У меня была система, в которой я сделал несколько обновлений, а затем вышел из строя, как указано выше для centosplus и epel - я обнаружил, что решение состояло в том, чтобы отключить оба и просто запустить yum update, а затем снова запустить его с включенными обоими репозиториями. Как кто-то намекает выше ... вероятно, безопаснее всего выполнить обновление, прежде чем добавлять репозиторий epel в систему ;-) - person Ralph Bolton; 14.10.2020

используйте эту команду:

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

to

mirrorlist=http://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
person sumit pandit    schedule 12.01.2015
comment
Спасибо; это сработало для меня после того, как я попробовал многие другие задокументированные решения (моя ошибка была Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again). У меня вопрос: почему это сработало? это связано с проблемой конфигурации на сайте репозитория? - person CODE-REaD; 20.07.2019
comment
Вероятно, не сервер HTTPS, но поддержка HTTPS на стороне клиента в системах может устареть, поскольку корневые центры сертификации не обновляются или библиотеки SSL не поддерживают новые шифры. - person mwfearnley; 20.08.2019
comment
После многих попыток решено с помощью вашей команды sed. Просто скопируйте + вставьте, это то, что мне нужно, потому что обычно я не отвечаю за такие вещи, просто устанавливаю тестовый компьютер, который будет использоваться только мной для проверки некоторых обновлений базы данных. - person EAmez; 31.10.2019
comment
В Cent OS 7.6 это sudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo - person JamesThomasMoon; 05.02.2020

В моем случае комментирование mirrorlist и снятие комментария с baseurl не работает. Я заметил, что проблема была в https внутри файлов .repofedora. Я решил это, зайдя в /etc/yum.repository.d и заменив все https на http в разных файлах .repo. Это сработало !!

person Joseph N.    schedule 23.11.2014
comment
Вероятно, это связано с прокси, установленным в /etc/yum.conf (прокси компании)? - person Christof Kälin; 20.08.2019

Я думаю, это должно сработать. Я решил с этим свою проблему.

$ sudo yum очистить все

$ sudo yum --disablerepo = "epel" обновить nss

person Varun    schedule 26.06.2015
comment
Это работает для Centos 6.8. Спасибо - person neo; 08.05.2019
comment
Это также решило мою проблему, мне любопытно, почему update nss помогает решить эту проблему ?! - person KlajdPaja; 05.02.2020
comment
обновление nss не сработало для меня, но обновите завиток после этого - person paulzag; 29.10.2020
comment
Это работает и для Centos 6.5. Спасибо - person Rinos; 11.11.2020

Обновление curl у нас сработало. Каким-то образом yum использует curl для своих транзакций.

yum update curl --disablerepo=epel
person sbetharia    schedule 14.06.2019
comment
Ваш ответ лучше принятого, не нужно изменять epel.repo или epel-testing.repo. - person Hosi Golden; 19.07.2019
comment
Я отследил это и обновил завиток, прежде чем читать этот или некоторые другие ответы. Я вижу, что обновление curl также обновило nss ... поэтому мне интересно, была ли это проблема. В моем случае я свернул URL-адрес metalink, увидел, что он не работает, и увидел, что он работает с --tlsv1 (bugzilla.redhat.com/show_bug.cgi?format=multiple&id=1170339). Предполагаемый локон устарел и обновил его. Итак, теперь мне интересно, можно ли было обновить NSS без обновления curl, и это сработало бы или нет. - person Paul; 07.05.2020

Проверьте, подключаетесь ли вы к Интернету через прокси-сервер, а затем добавьте адрес интернет-прокси в yum конфигурацию.

добавлять

proxy=http://ip:port

to /etc/yum.conf

person Rashad Saif    schedule 03.05.2016
comment
убедитесь, что также указан прокси https. - person Markus; 11.08.2017
comment
это сработало для меня, но только с дополнительным следующим параметром: proxy_username=your_user proxy_password=your_passwd - person MaggusK; 12.02.2018

Пошаговые инструкции

Выполнение следующей команды обновит репозиторий для использования HTTP, а не HTTPS:

sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo

После этого вы сможете выполнить обновление с помощью этой команды:

yum -y update
person Varadhan Work    schedule 09.01.2015
comment
Единственное решение, которое у меня работает! Все остальные в него ничего не меняли (нужны пакеты epel). - person KuroNeko; 13.12.2017
comment
В Cent OS 7.6 это sudo sed -i "s/metalink=https/metalink=http/" /etc/yum.repos.d/epel.repo - person JamesThomasMoon; 05.02.2020

Вы можете столкнуться с этим сообщением / ошибкой после установки epel-release. Быстрое решение - обновить сертификаты SSL:

yum -y upgrade ca-certificates

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

yum -y upgrade ca-certificates --disablerepo=epel 

После обновления сертификатов вы сможете нормально использовать yum, даже репозиторий epel будет работать нормально. Если вы получаете ту же ошибку для другого репо, просто укажите его имя напротив флага --disablerepo=<repo-name>.


Примечание: используйте sudo, если вы не root.

person Nabeel Ahmed    schedule 02.12.2016
comment
Для меня это лучший ответ :) - person qingbo; 03.08.2017

Я решил эту проблему этим решением.

вы просто меняете в этом файле /etc/yum.repos.d/epel.repo

mirrorlist = измените этот URL с https на http

baseurl = измените этот URL https на http

person how to i start    schedule 04.02.2015

Все вышеперечисленное у меня не сработало, но восстановление базы данных rpm с помощью следующей команды сработало:

sudo rpm --rebuilddb

Спасибо всем за помощь.

person Beavus Slagerty    schedule 05.03.2015
comment
Перед этим пришлось использовать baseurl вместо mirrorlist (принятый ответ) - person Telmo Pimentel Mota; 16.04.2019

Для ящиков, у которых нет доступа в Интернет, вы можете удалить epel репозиторий:

yum remove epel-release --disablerepo=epel

Это случилось со мной, когда я случайно установил epel-release, используя rpm в производственном блоке.

person Howard Lee    schedule 30.06.2016

Я столкнулся с той же проблемой, хотя пакет 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

Изменение системного времени устранило проблему.

person sauerburger    schedule 23.04.2018
comment
Большое вам спасибо за этот ответ. Вы, сэр, легенда - person Tony Sepia; 02.09.2018

Я решил это, зайдя в /etc/yum.repository.d/. В моем случае я закомментировал зеркальный список и не закомментировал записи с помощью baseurl. а также добавил sslverify = false.

https://serverfault.com/questions/637549/epel-repo-for-centos-6-causing-error

person Laxman S    schedule 27.11.2014
comment
Не только это, но и изменение URL-адресов на archives.fedoraproject.org/pub/archive/fedora/linux/releases/ (для fedora.repo и fedora-updates.repo). Обратите внимание на архивы впереди и pub / archive в пути) - person dagelf; 24.03.2015
comment
yum install -y yum-utils --disablerepo = epel && yum-config-manager --save --setopt = epel.sslverify = false - person Andrei Sedoi; 20.10.2019

Я решил эту проблему, изменив записи https в файле epel.repo на http.

person Fabricio    schedule 13.04.2015

В моем случае, когда я закомментировал зеркальный список, ошибка исчезла, но репо также не работало, поэтому я вручную указываю правильный базовый 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

person Rohit Sharma    schedule 07.07.2020

Изменение URL-адреса зеркального списка с https на http устранило проблему для меня.

person Anil Reddy    schedule 19.04.2016

Исправил мой вот так:

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`
person Future    schedule 30.10.2017

У меня ничего из этого не сработало (я даже не пробовал использовать хаки вроде ручного редактирования файла репо).

Однако это сработало после простого yum update -y

person jaustin    schedule 29.05.2019

Другая возможная причина - ваша архитектура не поддерживается. Я столкнулся с этим, потому что мне была предоставлена ​​виртуальная машина CentOS, я хотел установить EPEL и не мог этого сделать.

Оказывается, виртуальная машина была CentOS 7 i386, архитектура которой, по-видимому, больше не поддерживается EPEL. Думаю, единственное средство в этом случае - переустановить.

person aross    schedule 18.12.2019

Пытаться

yum clean all --enablerepo=*

потом

yum update --disablerepo=epel
person Omid Estaji    schedule 06.12.2020

Я пробовал большинство из этих решений, и ни одно из них не помогло мне.

Единственное, что у меня сработало, - это отключить и удалить оскорбительное репо.

sudo yum --disablerepo=epel\* remove epel-release.noarch
person Fred    schedule 18.03.2021

Для устаревшей CentOS 6 я использовал это в /etc/yum.repos.d/epel.repo

baseurl = https: //d2lzkl7pfhq30w.cloudfront.net/pub/archive/epel/6/$basearch

person grepmaster    schedule 21.06.2021