一、問(wèn)題背景
使用 yum 時(shí)報(bào)錯(cuò),yum list 或 yum 安裝任何東西都報(bào)錯(cuò)
錯(cuò)誤代碼
關(guān)鍵信息:Cannot download repodata/repomd.xml: All mirrors were tried
二、解決方案
這里其實(shí)給大家一個(gè)建議,也算是自己的一個(gè)心得吧:很多時(shí)候我們看到報(bào)錯(cuò),都會(huì)習(xí)慣性的復(fù)制報(bào)錯(cuò)信息,然后百度或者谷歌搜索看別人是如何解決的。但是很多時(shí)候,問(wèn)題并不一致,或者說(shuō),報(bào)錯(cuò)的關(guān)鍵信息復(fù)制的不對(duì)的話,也很容易就走到岔路上去。很多時(shí)候,我建議是好好閱讀一下報(bào)錯(cuò)信息,了解主要是因?yàn)槭裁磮?bào)錯(cuò),然后再去對(duì)癥下藥,有針對(duì)性的搜索和過(guò)濾更適合的解決方案。
所以呢,其實(shí)我最開(kāi)始沒(méi)有認(rèn)真閱讀報(bào)錯(cuò)信息,想當(dāng)然的復(fù)制了第一行報(bào)錯(cuò):Errors during downloading metadata for repository ‘base’,然后去搜索,最后走了很多彎路,試了網(wǎng)上別人的很多種解決方案,都不生效。最后,靜下心來(lái),好好閱讀了一下報(bào)錯(cuò)全部信息,找到了關(guān)鍵報(bào)錯(cuò):Cannot download repodata/repomd.xml,才發(fā)現(xiàn)了問(wèn)題所在。
所以這里就主要說(shuō)一下最終解決,其實(shí)主要還是官方的問(wèn)題,詳見(jiàn)阿里云官方文檔(更明細(xì)):
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11CyvQPT
1、原因分析:
centos8項(xiàng)目官方已于2021年底停止,相關(guān)源已無(wú)法使用,所以網(wǎng)上22年前的換源教程都已無(wú)法使用。
2、如何解決:
(1)進(jìn)入配置文件內(nèi),刪除所有的.repo文件(也可以備份)
進(jìn)入配置文件夾
cd /etc/yum.repos.d/
刪除舊的配置文件
rm *.repo
輸入“y”回車(chē)確認(rèn)
(2)ls 確保該目錄下的.repo文件已完全刪除(重要)
注意必須全部刪除,或全部移除備份到別處,否則就算你切換的 yum 源,也還是會(huì)報(bào)上面的錯(cuò)
(3)下載可以用的.repo文件
wget -O /etc/yum.repos.d/centos-Base.repo https://mirrors.aliyun.com/repo/centos-vault-8.5.2111.repo
如果你沒(méi)有安裝wget,也可以用下面命令:
cURL -o /etc/yum.repos.d/centos-Base.repo https://mirrors.aliyun.com/repo/centos-vault-8.5.2111.repo
(4)清除緩存,及運(yùn)行 yum makecache 生成緩存
yum clean all
yum makecache
3、如果你是非阿里云ECS用戶,可能回會(huì)出現(xiàn) Couldn’t resolve host ‘mirrors.cloud.aliyuncs.com’ 的信息,不過(guò)不影響使用。你可以修改相關(guān)的配置:
sed -i -e ‘/mirrors.cloud.aliyuncs.com/d’ -e ‘/mirrors.aliyuncs.com/d’ /etc/yum.repos.d/centos-Base.repo