Centos执行yum命令报错

错误描述

错误:为仓库 '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=stock Could not resolve host: mirrorlist.centos.org

推荐方案

1. 修改仓库配置指向存档仓库(推荐)

运行以下命令,将仓库配置中的 mirrorlist 替换为 vault.centos.org:

bash 复制代码
sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

2. 清理并更新YUM缓存

bash 复制代码
sudo yum clean all
sudo yum makecache

3. 测试安装软件

bash 复制代码
sudo yum update

替代方案:使用国内镜像源(如阿里云、清华大学)

如果 vault.centos.org 速度较慢,可以改用国内镜像源。例如阿里云:

备份原有仓库配置

bash 复制代码
sudo mkdir /etc/yum.repos.d/backup
sudo mv /etc/yum.repos.d/CentOS-* /etc/yum.repos.d/backup/

下载阿里云仓库配置

bash 复制代码
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

清理并重建缓存

bash 复制代码
sudo yum clean all
sudo yum makecache

原因解释

CentOS 8已结束生命周期,官方镜像(mirrorlist.centos.org)不再维护。

新的仓库地址需要指向 vault.centos.org 或第三方镜像源。

验证是否成功

运行以下命令检查仓库是否正常:

bash 复制代码
sudo yum repolist

如果显示仓库列表,则表示已修复。

附:临时修复DNS(可选)

如果怀疑是DNS问题,可尝试修改DNS服务器:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf

通过以上步骤,你的仓库问题应该可以解决。如果仍有问题,请检查网络连接或防火墙设置。

相关推荐
女神下凡2 小时前
芯参谋(87):Linux 系统(SPI NOR)驱动开发指南
linux·运维·arm开发·驱动开发·嵌入式硬件·设计规范
wuminyu8 小时前
JVM规范学习总结:解释器与JIT编译器如何处理JVM字节码
java·linux·c语言·jvm·c++
海宇AI9 小时前
零信任架构实战:基于海宇个人风险报告构建自动化分期商城信用额度初审网关
运维·人工智能·架构·自动化
IMPYLH9 小时前
Linux 的时间为什么会被拨回去
linux·运维·服务器
2601_963282779 小时前
寒地窄带通信工程实践:黑龙江哈尔滨对讲机选型、组网与合规运维总结
运维·服务器·网络
叼烟扛炮10 小时前
[Git 实战] 学习笔记:从生成 SSH 密钥到解决 TortoiseGit 推送报错全指南
linux·运维·笔记·git·学习
xbzb11 小时前
OpenStack 网络管理(理论):Linux 网络虚拟化是 Neutron 的地基
linux·服务器·网络·openstack·network·neutron
我要见SA姐112 小时前
GitHub Actions 自动化:5 个真实运维提效案例
运维·数据库·机器学习·oracle·回归
Android系统攻城狮12 小时前
Linux FFmpeg深度解析之avcodec_flush_buffers调用流程与实战(十九)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频进阶
水饺编程13 小时前
第2章:Linux 基础,解压缩【.tar.bz2】压缩包文件
linux·c语言·汇编