Yum 错误“无法检索存储库的 metalink: epel。请验证其路径并重试”更新 ContextBroker

我正在尝试使用 yum install contextBroker 命令更新 Orion ContextBroker:

加载的插件: 快速镜像,刷新软件包,安全加载

缓存主机文件的镜像速度

错误: 无法检索存储库的 metalink: epel。请验证 它的路径,并再次尝试

会出什么问题呢?

334061 次浏览

我解决了编辑 /etc/yum.repos.d/epel.repo/etc/yum.repos.d/epel-testing.repo文件的这个问题,注释了以 mirrorlist=...开头的所有条目,取消了以 baseurl=...开头的所有条目的注释。

For my case commenting out mirrorlist and uncomenting entries with baseurl din't work. I noticed the problem was with the https iniside the .repofedora files. I solved it by going in /etc/yum.repository.d and replacing all https with http in different .repo files. That worked!!

我通过输入/etc/yum.Repitory.d/解决了这个问题。对于我的情况,我用 baseurl 注释镜像列表和取消注释条目。以及添加 sslify = false。

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

你只需要更新一下 c- 证书包,在此之前只需要禁用所有 https 失败的回购协议。 这就是为什么注释镜像列表或使用 http 代替 https 的解决方案也可行。

例如,如果你只需要禁用 epel 回购:

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

这也将有助于 wget、 curl 和其他使用 SSL 证书的内容。

演练步骤

运行以下命令将使回购更新为使用 HTTP 而不是 HTTPS:

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

然后,您应该能够使用以下命令进行更新:

yum -y update

use this command:

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

我用这个方法解决了这个问题。

您只需在这个文件/etc/yum.Rep.d/epel.repo 中进行更改

将此 URL https 更改为 http

Baseurl = 将此 URL https 更改为 http

以上所有方法对我来说都不管用,但是使用以下命令重建 rpm 数据库就可以了:

sudo rpm --rebuilddb

谢谢你的帮助。

我通过将 epel.repo 文件中的 https 条目更改为 http 来解决这个问题。

我想这应该能行,我用这个解决了我的问题。

$sudo yum clean all

$sudo yum —— disablerepo = “ epel”update nss

将镜像列表 URL 从 https 更改为 http 为我解决了这个问题。

检查是否通过代理访问互联网,然后将互联网代理地址添加到 yum配置。

proxy=http://ip:port

/etc/yum.conf

对于不能上网的盒子,您可以删除 epel存储库:

yum remove epel-release --disablerepo=epel

这种情况发生在我身上,因为我不小心安装 epel-release使用 rpm在一个针盒。

在安装了 epel-release 之后,您可能会遇到这个消息/错误:

yum -y upgrade ca-certificates

Chances are the above error may also occur while certificate update, if so, just disable the epel repo i.e. use the following command:

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

一旦证书被更新,你将能够正常使用 yum,甚至 epel 回购将工作良好。如果您在不同的回购中得到相同的错误,只需将其名称放在 --disablerepo=<repo-name>标志上即可。


注意 : 如果您不是 root用户,请使用 sudo

像这样修理我的:

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`

我遇到了同样的问题,尽管 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 连接失败的原因是系统日期被设置为 DigiCert High Assurance EV Root CA无效的2002年。

$ date
Di 1. Jan 11:10:35 CET 2002

更改系统时间修复了问题。

这些都不适合我(我甚至没有尝试手动编辑回购文件)。

然而,它工作后一个简单的 yum update -y

Updating curl worked for us. Somehow yum uses curl for its transactions.

yum update curl --disablerepo=epel

Another possible cause is that your architecture is not supported. I ran into this because I was provided with a CentOS VM, wanted to install EPEL and couldn't for the life of me get it done.

原来虚拟机是 CentOS7i386,这是一个架构,显然不再支持的 EPEL。我想这种情况下唯一的补救办法就是重新安装。

In my case when I comment out mirrorlist the error got away but the repo was also not working so I manually point the right baseurl in /etc/yum.repos.d/epel.repo as below

[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


试试看

yum clean all --enablerepo=*

Then

yum update --disablerepo=epel

我尝试了这些解决方案中的大部分,但没有一个对我有效。

唯一对我有效的方法就是禁用并移除违规的回购协议。

sudo yum --disablerepo=epel\* remove epel-release.noarch

For obsolete CentOS 6, I used this in /etc/yum.repos.d/epel.repo

巴塞尔 = https://d2lzkl7pfhq30w.cloudfront.net/pub/archive/epel/6/$basearch

我在 Windows10上运行 Centos7虚拟机时遇到了这个错误。经过一番努力,我发现错误来自于 yum 试图使用 IPV6,所以我不得不编辑/etc/yum.conf,添加:

ip_resolve = 4

我希望这能帮助其他人比我花更少的时间在这个错误上!

首先,检查/etc/yum.conf 中的“ yum”配置 然后尝试以上提示: -)