在最近学习centos 8 时更新yum源时出现“下载元数据失败”的现象:
[root@localhost yum.repos.d]
CentOS-8 - Base 115 B/s | 153 B 00:01
为 repo 'BaseOS' 下载元数据失败
错误:为 repo 'BaseOS' 下载元数据失败
我的版本:
[root@localhost yum.repos.d]
Linux localhost.localdomain 4.18.0-147.el8.x86_64
[root@localhost yum.repos.d]
CentOS Linux release 8.1.1911 (Core)
原因:
- CentOS8之后仓库已经不是这样的url了:
https://mirrors4.tuna.tsinghua.edu.cn/centos/8/BaseOS/x86_64/os/ 版本号基于stream进行了修改 https://mirrors4.tuna.tsinghua.edu.cn/centos/8-stream/BaseOS/x86_64/os/ 注意变成了 8-stream 而不是 8
方法:
find /etc/yum.repos.d/ -name "*.repo" | xargs sed -i 's/$releasever/8-stream/g'
find /etc/yum.repos.d -name "*.repo" | xargs sed -i 's/$basearch/x86_64/g'
这样就可以解决了。
第二种方法就是不改变URL的情况下,我们也可以修改yum 默认的参数变量 进行正确的url指向:
cat > /etc/yum/vars/basearch <<EOF
x86_64
EOF
cat > /etc/yum/vars/releasever <<EOF
8-stream
EOF
注意如果是银河麒麟或者是其他操作系统需要根据 仓库的url进行修改
|