別亂改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安裝軟體就會報一樣的錯。