别乱改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安装软件就会报一样的错。