本文主要是介绍CentOS8-Stream Yum下载报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
CentOS8-Stream Yum下载报错
报错信息如下
CentOS Linux 8 - AppStream 0.0 B/s | 0 B
Errors during downloading metadata for repository 'appstream':- Curl error (6): Couldn't resolve host name for http://mirrorlist.centos.org/?release=8&arch=x86_64&repo=AppStream&infra=container [Could not resolve host: mirrorlist.centos.org]
Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for http://mirrorlist.centos.org/?release=8&arch=x86_64&repo=AppStream&infra=container [Could not resolve host: mirrorlist.centos.org]
原因: CentOS8已于 2021年12月31日停止更新和维护,CentOS团队从官方镜像中移除了CentOS8的所有的包,所以在使用yum安装或更新会报上述错误
解决方法
1. cd 到仓库目录下
[root@eleven ~]# cd /etc/yum.repos.d/2. 替换镜像配置
[root@eleven yum.repos.d]# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*[root@eleven yum.repos.d]# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*3.重新生成缓存和更新
[root@eleven yum.repos.d]# yum clean all && yum makecache
[root@eleven yum.repos.d]# yum update# 然后即可正常下载安装包
命令解释
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
sed:这是 Linux 和 Unix 系统中用于文本处理的流编辑器。它可以执行文本替换、删除、新增等多种操作-i:这个选项告诉 sed 直接修改文件内容,而不是将结果输出到标准输出(通常是屏幕)'s|old_text|new_text|g':这是 sed 的替换命令,格式为 s|原字符串|新字符串|标志。在这个例子中,它用于将匹配到的old_text 替换为 new_text。s 表示替换操作。| 是分隔符,通常使用 /,但在这里使用了 | 来避免与 URL 中的 / 混淆。你可以使用几乎任何字符作为分隔符。baseurl=http://vault.centos.org 是替换后的文本
g 是一个标志,表示全局替换。/etc/yum.repos.d/CentOS-*:这是 sed 命令要处理的文件路径。/etc/yum.repos.d/ 是 YUM 仓库配置文件所在的目录,而 CentOS-* 是一个通配符,用于匹配所有以 CentOS- 开头的文件。这意味着命令将应用于 /etc/yum.repos.d/ 目录下所有与 CentOS 相关的 YUM 仓库配置文件。
这篇关于CentOS8-Stream Yum下载报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!