yum相關變量淺析

問題背景

同事發現一臺centos7機器的yum repo不能使用,現象爲相關的repo的meta文件下載失敗,提示相關meta文件的下載路徑有問題。

問題分析

通過終端輸出的報錯,發現是/etc/yum.repos.d/*.repo配置文件中\$releasever變量沒有加載到正確的值。我們下面先看看yum幾個主要變量的作用和設置方法。

yum相關變量

$arch

作用:標識cpu的架構,如i386,i486,i586等
默認取值:默認根據cpu架構自動取值
設置方法:
在/etc/yum/vars/arch文件寫入一個值,這個值就是這個變量的值(優先級高)

$basearch

作用:標識cpu的基本架構。例如i486和i586等使用一個基本架構i386,AMD64和Intel64有一個基本的架構x86_64。
默認取值:默認根據cpu架構自動取值
設置方法:在/etc/yum/vars/basearch文件寫入一個值,這個值就是這個變量的值(優先級高)

$releasever

作用:標識操作系統的版本號。
默認取值:先查找/etc/yum.conf配置文件中distroverpkg配置的value,然後取得value對應的rpm包名,最後獲取到這個rpm包的release版本號就是這個變量的值(如果是centos系統,默認情況下distroverpkg的value爲centos-release,再取centos-release這個包的release號)
設置方法:在/etc/yum/vars/basearch文件寫入一個值,這個值就是這個變量的值(優先級高)

問題解決

發現是centos-release這個rpm包被刪掉了,把這個包重裝了一下,$releaserver變量取值就正常了,到此問題解決。在centos6/7系統上,如上yum相關變量的設置方法相同。

參考文章

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/sec-Configuring_Yum_and_Yum_Repositories#

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章