CentOS7 执行yum 命令出错 One of the configured repositories 如何解决
评论新安装的一台云服务器, 执行yum命令出现了错误, One of the configured repositories failed (Unknown),, 后是Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again 。完整的错误信息是
yum update
Loaded plugins: fastestmirror
base | 3.6 kB 00:00:00
One of the configured repositories failed (Unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
3. Run the command with the repository temporarily disabled
yum --disablerepo=<repoid> ...
4. Disable the repository permanently, so yum won't use it by default. Yum
will then just ignore the repository until you permanently enable it
again or use --enablerepo for temporary usage:
yum-config-manager --disable <repoid>
or
subscription-manager repos --disable=<repoid>
5. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:
yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true
Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again
这里重点是后一行 for repository: epel/x86_64. 说明是这个仓储出了问题。
解决办法1 删除这个仓库
rm -f mv /etc/yum.repos.d/epel.repo
这样执行yum
命令就可以正确的执行。不过少了 epel 仓库好多软件包不能用。
这里介绍
二种解决方法
查看了
cat /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
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://download.fedoraproject.org/pub/epel/7/$basearch/debug
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
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://download.fedoraproject.org/pub/epel/7/SRPMS
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
然后测试了一下网络
[root@lampfree.com ~]# ping download.fedoraproject.org
ping: download.fedoraproject.org: Name or service not known
[root@lampfree.com ~]# ping mirrors.fedoraproject.org
ping: mirrors.fedoraproject.org: Name or service not known
发现网络不通,这里就需要解决网络问题。
修改dns
cat /etc/resolv.conf
nameserver 8.8.8.8
如果不能解决,就修改
echo "140.211.169.206 download.fedoraproject.org" >> /etc/hosts
echo "140.211.169.206 download.fedoraproject.org" >> /etc/hosts
反正网络通了,就可以解决问题。
两个ip地址随时可能用变量
PING wildcard.fedoraproject.org (140.211.169.206) 56(84) bytes of data.
64 bytes from proxy09.fedoraproject.org (140.211.169.206): icmp_seq=1 ttl=48 time=229 ms
64 bytes from proxy09.fedoraproject.org (140.211.169.206): icmp_seq=2 ttl=48 time=228 ms
ping mirrors.fedoraproject.org
PING wildcard.fedoraproject.org (140.211.169.196) 56(84) bytes of data.
64 bytes from proxy06.fedoraproject.org (140.211.169.196): icmp_seq=1 ttl=48 time=228 ms