目录
🚢问题出现场景:
🚢问题产生原因:
🚢解决方案:
指令归纳:
🚢问题出现场景:
在学习使用 docker 技术过程中,使用 centos:latest 最新版镜像时,由于初始化镜像是不带有vim 编辑工具,需要手动安装 vim 。然而在刚开始通过 yum -y install vim 安装 vim 时,便出现了错误提示信息:
Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
上面的报错信息意思是:从仓库 ‘appstream’ 下载元数据失败:由于镜像列表中没有 URL,不能准备内部镜像列表。
🚢问题产生原因:
第一种情况:可能是由于网络连接问题,检查是否可以连接外部网络,可以使用 ping baidu.com 查看是否有丢包情况。如果丢包,则进一步检查网络连接是否正常;如果没有丢包,继续阅读下文
能正常 PING 通的情况下,就说明不是网络问题导致。
第二种情况:便是 CentOS 已经停止维护的问题。2020 年 12 月 8 号,CentOS 官方宣布了停止维护 CentOS Linux 的计划,并推出了 CentOS Stream 项目,CentOS Linux 8 作为 RHEL 8 的复刻版本,生命周期缩短,于 2021 年 12 月 31 日停止更新并停止维护(EOL),更多的信息可以查看 CentOS 官方公告。如果需要更新 CentOS,需要将镜像从 mirror.centos.org 更改为 vault.centos.org
🚢解决方案:
进入到 yum 的 repos 目录
cd /etc/yum.repos.d/
修改 centos 文件内容
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http ://mirror.centos.org|baseurl=http ://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
生成缓存更新(第一次更新,速度稍微有点慢,耐心等待两分钟左右)
yum makecache
更新 yum 源信息:
yum update 并重新安装 vim
yum update -y
yum -y install vim
指令归纳:
直接使用下面的所有指令也是可以的,这里添加了阿里云的镜像源,对于下载速度和稳定相对有保障一些。
cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http ://mirror.centos.org|baseurl=http ://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
如果已经安装了wget就不需要这一步
yum install wget –y
更新yum源为阿里源
wget -O /etc/yum.repos.d/CentOS-Base.repo https ://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
yum clean all
yum makecache
验证
yum install -y vim