我尝试使用命令yum install contextBroker更新Orion ContextBroker。不幸的是,我收到以下错误:
加载的插件:fastermirror,refresh-packagekit,安全加载
来自缓存主机文件的镜像速度
错误:无法检索存储库的metalink:epel。请验证 它的路径,然后再试一次
可能出现什么问题?
答案 0 :(得分:142)
您只需要更新ca-certificates包。在此之前,只需使用失败的https禁用所有回购。 这就是为什么使用评论镜像列表或使用http代替https的解决方案也可以。
例如,如果您只需要禁用epel repo:
yum --disablerepo=epel -y update ca-certificates
这也有助于wget,curl和其他任何使用SSL证书的内容。
答案 1 :(得分:76)
我解决了编辑/etc/yum.repos.d/epel.repo
和/etc/yum.repos.d/epel-testing.repo
文件的问题,评论了以mirrorlist=...
开头的所有条目,并取消注释了以baseurl=...
开头的所有条目。
答案 2 :(得分:32)
使用此命令:
sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
或者使用命令
vi /etc/yum.repos.d/epel.repo
转到第4行并从
更改网址mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
到
mirrorlist=http://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
答案 3 :(得分:12)
我的案例评论mirrorlist
并且baseurl
取消评论条目不起作用。我注意到问题出在https
iniside .repo
fedora文件中。我通过进入/etc/yum.repository.d
并在不同的.repo文件中用https
替换所有http
来解决这个问题。这有效!!
答案 4 :(得分:9)
检查您是否访问互联网投放代理,然后您必须将互联网代理地址添加到yum配置。
添加
proxy=http://ip:port to /etc/yum.conf
答案 5 :(得分:5)
我想这应该有效。我解决了这个问题。
$ sudo yum clean all
$ sudo yum --disablerepo =“epel”update nss
答案 6 :(得分:5)
安装epel-release后,您可能会遇到此消息/错误。快速解决方法是更新您的SSL证书:
yum -y upgrade ca-certificates
有可能在证书更新时也会出现上述错误,如果是这样,只需禁用epel
repo,即使用以下命令:
yum -y upgrade ca-certificates --disablerepo=epel
一旦证书更新,您就可以正常使用yum,即使epel repo也能正常工作。如果您为不同的回购获得同样的错误,只需将其名称放在--disablerepo=<repo-name>
标记上。
注意:如果您不是sudo
用户,请使用root
。
答案 7 :(得分:4)
以上所有内容对我来说都不起作用,但使用以下命令重建rpm数据库时:
sudo rpm --rebuilddb
感谢大家的帮助。
答案 8 :(得分:3)
我通过这个解决方案解决了这个问题。
您只需更改此文件/etc/yum.repos.d/epel.repo
mirrorlist =将此网址https更改为http
baseurl =将此网址https更改为http
答案 9 :(得分:3)
对于无法访问互联网的框,您可以删除epel
存储库:
yum remove epel-release --disablerepo=epel
我发生这种情况,因为我在产品盒上使用epel-release
意外安装了rpm
。
答案 10 :(得分:3)
即使ca-certificates包是最新的,我也遇到了同样的问题。镜像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
DigiCert High Assurance EV Root CA
在我的情况下,https连接失败的原因是系统日期设置为$ date
Di 1. Jan 11:10:35 CET 2002
尚未(有效)的2002年。
stylePreprocessorOptions
更改系统时间解决了问题。
答案 11 :(得分:2)
演练步骤
运行以下命令将更新repo以使用HTTP而不是HTTPS:
sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
然后您应该能够使用此命令进行更新:
yum -y update
答案 12 :(得分:2)
我通过进入/etc/yum.repository.d/解决了这个问题。对于我的情况,我将使用baseurl注释掉mirrorlist和uncomenting条目。以及添加sslverify = false。
https://serverfault.com/questions/637549/epel-repo-for-centos-6-causing-error
答案 13 :(得分:2)
更新curl对我们有用。 yum以某种方式使用curl进行交易。
yum update curl --disablerepo=epel
答案 14 :(得分:1)
我通过将epel.repo文件中的https条目更改为http来解决此问题。
答案 15 :(得分:1)
在我的情况下,当我注释掉镜像列表时,错误消失了,但是存储库也无法正常工作,因此我在/etc/yum.repos.d/epel.repo
中手动将正确的baseurl指向如下,
[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
答案 16 :(得分:0)
对于过时的 CentOS 6,我在 /etc/yum.repos.d/epel.repo 中使用了这个
baseurl=https://d2lzkl7pfhq30w.cloudfront.net/pub/archive/epel/6/$basearch
答案 17 :(得分:0)
我尝试了大多数这些解决方案,但没有一个对我有用。
唯一对我有用的是禁用和删除有问题的存储库。
sudo yum --disablerepo=epel\* remove epel-release.noarch
答案 18 :(得分:0)
尝试
yum clean all --enablerepo=*
然后
yum update --disablerepo=epel
答案 19 :(得分:0)
另一个可能的原因是不支持您的体系结构。我之所以遇到这个问题,是因为我被提供了一个CentOS VM,想要安装EPEL,却终生无法完成它。
事实证明,VM是CentOS 7 i386,它显然是EPEL不再支持的体系结构。我想在这种情况下,唯一的补救方法是重新安装。
答案 20 :(得分:0)
这些都不适合我(我什至没有尝试过像手动编辑回购文件那样的黑客技巧。)
但是在简单的yum update -y
答案 21 :(得分:0)
修正了我这样的:
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`
答案 22 :(得分:0)
将镜像列表网址从https更改为http为我解决了这个问题。