我有一台运行 CentOS 6(64 位)的虚拟机,我正尝试像往常一样添加 EPEL 存储库来安装各种软件包,我经常这样做。
今天,我遇到了一些奇怪的错误,但我却没有做任何不同的事情。
我正在像这样添加 EPEL:
# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm
然而,当我尝试运行 yum 时,出现了这个错误:
[root@core /]# yum 列表
已加载插件:fastestmirror
确定最快的镜像
错误:无法检索存储库 epel 的 metalink。请验证其路径并重试
有什么想法吗?我被难住了!
答案1
正确的解决方法是更新您的 SSL 证书。
sudo yum upgrade ca-certificates --disablerepo=epel
您需要禁用 epel repo 以使此命令成功。更新证书后,您可以正常使用 yum,因为 EPEL 将再次工作。
答案2
我遇到了这个问题,归根结底是因为通过 HTTPS 获取 EPEL 的更新的 metalink 文件时 SSL 证书无法验证。我想我可以深入研究证书链以找出原因,但为了让我的服务器重新工作,我通过在 中添加以下行来避开了这个问题/etc/yum.repos.d/epel.repo
:
[epel]
...
sslverify=false
我并不认为这是非常不安全的,因为包本身仍然通过 GPG 签名检查进行验证。
答案3
您可以通过以 root/sudo 身份运行以下命令来修改 epel repo 以使用 http 而不是 https
sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
答案4
荒谬地使用安全 HTTP 会导致问题,但普通 HTTP 却运行正常。全新安装时不应该发生这种情况,因此 Fedora 的存储库肯定存在问题。现在它可以正常工作了。