解决wsl2下CentOS 7 的 yum 仓库无法连接问题

报错问题:

root@DESKTOP-BKD8L76 \~\]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7\&arch=x86_64\&repo=os\&infra=genclo error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error" One of the configured repositories failed (Unknown), and yum doesn't have enough cached data to continue. At this point the only safe thing yum can do is fail. There are a few ways to work "fix" this: 1. Contact the upstream for the repository and get them to fix the problem. 2. Reconfigure the baseurl/etc. for the repository, to point to a working upstream. This is most often useful if you are using a newer distribution release than is supported by the repository (and the packages for the previous distribution release still work). 3. Run the command with the repository temporarily disabled yum --disablerepo= ... 4. Disable the repository permanently, so yum won't use it by default. Yum will then just ignore the repository until you permanently enable it again or use --enablerepo for temporary usage: yum-config-manager --disable or subscription-manager repos --disable= 5. Configure the failing repository to be skipped, if it is unavailable. Note that yum will try to contact the repo. when it runs most commands,so will have to try and fail each time (and thus. yum will be be much slower). If it is a very temporary problem though, this is often a nice compromise:yum-config-manager --save --setopt=.skip_if_unavailable=true Cannot find a valid baseurl for repo: base/7/x86_64

这个错误表明 CentOS 7 的 yum 仓库无法连接,主要是因为 mirrorlist.centos.org 域名解析失败或网络访问被阻止。以下是具体原因和解决方案:

错误原因:

1.网络连接问题:WSL2 的 DNS 配置异常,无法解析 mirrorlist.centos.org。防火墙或代理阻止了访问 CentOS 官方仓库。

2.CentOS 7 已停止维护(EOL),自 2024年6月30日 起,CentOS 7 官方仓库已迁移到 vault.centos.org,原 mirrorlist.centos.org 不再更新。

解决:手动修改仓库地址

bash 复制代码
# 备份原有仓库配置
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

# 创建新的仓库配置
sudo tee /etc/yum.repos.d/CentOS-Base.repo <<-'EOF'
[base]
name=CentOS-7 - Base
baseurl=https://vault.centos.org/7.9.2009/os/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-7 - Updates
baseurl=https://vault.centos.org/7.9.2009/updates/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-7 - Extras
baseurl=https://vault.centos.org/7.9.2009/extras/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
EOF

# 清理缓存并测试
sudo yum clean all
sudo yum makecache
sudo yum update -y

验证是否成功:

bash 复制代码
sudo yum install -y curl wget

看是否能成功安装,如果能就证明解决啦~

相关推荐
小-黯2 小时前
Linux桌面入口文件.desktop文件内容格式
linux·运维·服务器
Serverless社区2 小时前
探秘 AgentRun|基于 Serverless 的 AI Agent 沙箱工程化之路
运维·阿里云·云原生·serverless·函数计算
CheungChunChiu3 小时前
Flutter 在嵌入式开发的策略与生态
linux·flutter·opengl
十五年专注C++开发3 小时前
CMake基础: 在release模式下生成调试信息的方法
linux·c++·windows·cmake·跨平台构建
不会代码的小猴3 小时前
Linux环境编程第三天笔记
linux·笔记
~光~~3 小时前
【嵌入式linux学习】04_Pinctrl 和 GPIO子系统
linux·rk3588·嵌入式linux
475.353 小时前
linux-journal日志清理
linux·运维·服务器
weixin_438732103 小时前
ChromeDriver谷歌驱动下载
linux·chrome·selenium·自动化·mac·chrome devtools·chromedriver
Black__Jacket4 小时前
Ubuntu下,/dev下,无法读取到CH340串口芯片的端口号
linux·运维·ubuntu
小王不爱笑1324 小时前
云服务器部署 JavaWeb 项目
运维·服务器