­

别乱改yum.conf里distroverpkg的值,默认是centos-release不要动它

  • 2019 年 12 月 25 日
  • 筆記

Yum安装软件时报错

http://mirrors.tencentyun.com/epel/%24releasever/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 – Not Found

Trying other mirror.

原本是http://mirrors.tencentyun.com/epel/$releasever/应该解析成

http://mirrors.tencentyun.com/epel/6/

http://mirrors.tencentyun.com/epel/7/

为何$releasever没有获取到数字,深层次的原因与yum.conf里的distroverpkg的值“centos-release”有关

Distro是发行版的意思

Ver是版本Version这个单词的缩写

Pkg是Package的意思

合起来就是,distroverpkg这个参数是指定从哪里获取系统版本相关的信息,是从centos-release这个包里的文件获取的

centos-release这个包里面有很多release的文件,但执行rpm -ql centos-release|xargs ls -l 2>&1 |egrep release可以看到都是软链接,真正的还是centos-release

/etc/下的4个release,2个是文本文件,2个是指向centos-release的软链接

复现这个问题很简单,vim /etc/yum.conf,把distroverpkg=centos-release改成别的比如distroverpkg=centos-releasever然后执行yum install安装软件就会报一样的错。