CentOS 7能聯網但yum報錯:Could not resolve host: mirrorlist.centos.org
?終極解決方法
關鍵詞:CentOS 7, yum, Could not resolve host, mirrorlist.centos.org, 軟件源, EOL
問題描述
大家好!相信很多還在使用?CentOS 7?的朋友都遇到了這個問題:虛擬機明明可以?ping
?通外網,瀏覽器也能打開網頁,但一使用?yum
?命令就報錯,提示?Could not resolve host: mirrorlist.centos.org
?和?Cannot find a valid baseurl for repo: base/7/x86_64
。
bash
sudo yum install wget 已加載插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 未知的錯誤" ... Cannot find a valid baseurl for repo: base/7/x86_64
別急,這不是你的網絡配置問題!?本文教你如何快速解決它。
問題根源
這個錯誤的主要原因是因為?CentOS 7 已在 2024 年 6 月 30 日停止維護(EOL)。官方將原來的軟件源(包括?mirrorlist.centos.org
)遷移到了存檔服務器(如?vault.centos.org
),導致默認的配置無法再正常工作。
詳細步驟
步驟一:備份原有的軟件源配置(好習慣)
首先,我們備份一下原來的配置,以防萬一。
bash
sudo mv /etc/yum.repos.d /etc/yum.repos.d.backup sudo mkdir /etc/yum.repos.d
步驟二:下載新的軟件源配置文件
這里以阿里云鏡像源為例(國內訪問速度快且穩定)。
方法一:使用?curl
?命令直接下載(推薦)
如果您的系統還有?curl
?命令,直接執行:
bash
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
方法二:手動創建配置文件
如果?curl
?也報錯,沒關系,我們可以手動創建!
使用?
vi
?編輯器創建并編輯文件:bash
sudo vi /etc/yum.repos.d/CentOS-Base.repo
按下?
i
?鍵進入編輯模式,然后將以下?【阿里云】源配置?完整地復制粘貼進去:[base] name=CentOS-$releasever - Base - mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[updates] name=CentOS-$releasever - Updates - mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[extras] name=CentOS-$releasever - Extras - mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7[centosplus] name=CentOS-$releasever - Plus - mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
粘貼后,按下?
Esc
?鍵,然后輸入?:wq
?并回車,保存文件并退出?vi
?編輯器。
步驟三:清理緩存并重建
讓?yum
?讀取我們新配置的軟件源。
bash
sudo yum clean all # 清理舊的緩存 sudo yum makecache # 建立新的緩存
步驟四:大功告成,測試一下!
現在,再次執行你之前失敗的命令,測試是否成功:
bash
sudo yum install -y wget
如果看到?Complete!
?提示,恭喜你,問題已經完美解決!🎉
其他替代鏡像源
如果你不想用阿里云,也可以替換為其他源,只需在?步驟二?中使用對應的配置即可。
清華大學鏡像源:
下載命令:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tuna.tsinghua.edu.cn/repo/centos-vault-7.repo
華為云鏡像源:
下載命令:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-reg.repo
重要提醒
雖然此方法可以暫時解決軟件安裝的問題,但請注意:CentOS 7 已經停止維護,不再提供任何安全更新。這意味著繼續使用該系統可能會存在安全風險。
強烈建議:對于生產環境或新項目,請盡快規劃遷移到仍在維護的系統,如:
Rocky Linux
AlmaLinux
CentOS Stream
或其他穩定的 Linux 發行版。
總結
遇到?Could not resolve host: mirrorlist.centos.org
?錯誤,只需三步:
備份原配置。
換源到阿里云、清華等國內鏡像站。
清緩存并測試。
希望這篇教程能幫到你!如果還有問題,歡迎在評論區留言。