每次我在虚拟服务器上运行命令时,都会出现以下错误 centos8
[root@servers03 ~]#dnf 安装 epel-releaseCentOS Linux 8 - AppStream 0.0 B/s | 0 B
00:00 下载存储库“appstream”的元数据时出错:
- Curl 错误(6):无法解析主机名http://vault.centos.org/centos/8/AppStream/x86_64/os/repodata/repomd.xml [无法解析主机:vault.centos.org] 错误:无法下载 repo‘appstream’的元数据:无法下载 repomd.xml:无法下载 repodata/repomd.xml:已尝试所有镜像
[root@servers03 ~]#yum 更新 -yCentOS Linux 8 - AppStream
0.0 B/s | 0 B 00:00 下载存储库“appstream”的元数据时出错:
- Curl 错误(6):无法解析主机名http://vault.centos.org/centos/8/AppStream/x86_64/os/repodata/repomd.xml [无法解析主机:vault.centos.org] 错误:无法下载 repo‘appstream’的元数据:无法下载 repomd.xml:无法下载 repodata/repomd.xml:已尝试所有镜像
我尝试使用以下命令来修复错误,但没有成功
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
答案1
由此看来,[Could not resolve host: vault.centos.org]
DNS解析器似乎存在一些问题。
尝试运行以下命令:dig +short vault.centos.org
。它应该会返回几个地址。
如果没有,请尝试另一个域名:
dig +short redhat.com
。如果此命令也没有返回任何内容或报告错误,则意味着您的解析器对这些域名一无所知。
因此,最简单的选择是临时添加公共 DNS:
sudo echo "nameserver 8.8.8.8 \nnameserver 8.8.4.4" >> /etc/resolv.conf
更新后,您可以手动删除它们或者只是重新启动,resolv.conf 应该从接口配置生成。
答案2
您是否恰好在仅 IPv6 的 VM 上?如果是 - 您必须将 VM 指向外部双栈解析器,因为 centos.org 名称服务器仅支持 IPv4(考虑到 vault.centos.org 是双栈的,这很遗憾)。