解决CentOS8 yum官方源下线无法使用
一、问题背景
使用 yum 时报错,yum list 或 yum 安装任何东西都报错
关键信息:Cannot download repodata/repomd.xml: All mirrors were tried
二、解决方案
很多时候,我建议是好好阅读一下报错信息,了解主要是因为什么报错,然后再去对症下药,有针对性的搜索和过滤更适合的解决方案。好好阅读了一下报错全部信息,找到了关键报错:Cannot download repodata/repomd.xml,才发现了问题所在。
这里就主要说一下最终解决,其实主要还是官方的问题,详见阿里云官方文档:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11CyvQPT
1、原因分析:
centos8项目官方已于2021年底停止,相关源已无法使用,所以网上22年前的换源教程都已无法使用。
2、如何解决:
(1)进入配置文件内,删除所有的.repo文件(也可以备份)
# 进入配置文件夹
cd /etc/yum.repos.d/
# 删除旧的配置文件
rm *.repo
# 输入“y”回车确认
(2)ls 确保该目录下的.repo文件已完全删除
注意必须全部删除,或全部移除备份到别处,否则就算你切换的 yum 源,也还是会报上面的错
(3)下载可以用的.repo文件
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
或者
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
# 如果你没有安装wget,也可以用下面命令:
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
(4)清除缓存,及运行 yum makecache 生成缓存
yum clean all
yum makecache
或者
清除系统yum缓存,并重新生成新的yum缓存
dnf -y install epel-release
dnf clean all
dnf makecache
dnf repolist
3、如果你是非阿里云ECS用户,可能回会出现 Couldn’t resolve host ‘mirrors.cloud.aliyuncs.com’ 的信息,不过不影响使用。你可以修改相关的配置:
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
三、具体原因分析
可以看这篇文章:https://blog.csdn.net/weixin_42325823/article/details/122839554
主要就是镜像库丢了,正常的是有这个 repomd.xml 文件的,比如这个 /centos/8-stream/
可以到《阿里云开源镜像目录》https://mirrors.aliyun.com/centos/ 查看各版本情况。但是这个 centos/8/ 就没有了。
我们可以去看 centos8 的情况 mirrors.aliyun.com/centos/8/re… 就会看到这样的一行提示:This directory (and version of CentOS) is deprecated. 官方都不推荐了,我们肯定就不能用啦。
四、扩展
其实我们了解到主要原因就是因为 centos8 的镜像库 repomd.xml 文件丢了,但是比如 centos8-stream 是有的,也就是说我们可以把 yum 源的 repo.xml 里代表 8 的这个 releasever 全部改成 releasever-stream,这样也是可以解决问题的。
如何操作呢?修改CentOS-Base.repo文件内容如下:替换 “releasever/” 为 “releasever-stream/”
[root@mo12-0003 ~]# sed -i 's/releasever\//releasever-stream\//g' /etc/yum.repos.d/CentOS-Base.repo
然后重置缓存即可。
yum clean all
yum makecache
虚拟机virtualbox安装CentOS 重启后还是继续安装系统
本文解决VirtualBox安装centos8,安装完成后重启又进入到安装界面的问题




