VMware 中 CentOS 7 无法使用 yum 安装 wget 的完整解决方案

一、问题背景

在 VMware 虚拟机中安装了 CentOS 7 ,准备使用 wget 下载文件,但执行:

bash 复制代码
wget

提示命令不存在,于是尝试安装:

bash 复制代码
sudo yum install wget

结果出现报错:

bash 复制代码
curl#6 - "Could not resolve host: mirrorlist.centos.org"
Cannot find a valid baseurl for repo: base/7/x86_64

即 yum 无法访问镜像源,导致任何软件都无法安装。


二、问题现象总结

主要报错信息如下:

Markdown 复制代码
Could not resolve host: mirrorlist.centos.org
Could not resolve host: mirrors.aliyun.com //后续切换源,也不行

这说明:

虚拟机网络已通 IP,但 DNS 域名解析失败

同时 CentOS 7 官方 yum 镜像源已停止维护

因此必须同时解决两个问题:

  1. 修复 DNS
  2. 更换可用 yum 源

三、环境说明

  • 宿主机:Windows
  • 虚拟机:VMware Workstation
  • 系统:CentOS 7 Minimal
  • 网络模式:NAT

四、问题排查过程

1. 确认虚拟机是否联网

bash 复制代码
ping -c 3 8.8.8.8

返回:

Markdown 复制代码
64 bytes from 8.8.8.8 ...

说明 虚拟机已联网,IP 可达


2. 测试域名解析

bash 复制代码
ping mirrors.aliyun.com

提示:

text 复制代码
unknown host

说明 DNS 未配置,导致无法解析域名。


五、修复 DNS

执行:

bash 复制代码
cat > /etc/resolv.conf <<EOF
nameserver 8.8.8.8
nameserver 114.114.114.114
EOF

再次测试:

bash 复制代码
ping mirrors.aliyun.com

若返回 IP,则 DNS 修复成功。


六、CentOS 7 官方 yum 源已失效说明

CentOS 7 已于 2024 年进入 EOL 状态,

官方 mirrorlist.centos.org 已不再提供有效镜像列表,

因此必须切换第三方镜像源。


七、切换阿里云 yum 镜像源

1. 备份原仓库文件

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

2. 写入阿里云 CentOS 7 镜像配置

bash 复制代码
cat > /etc/yum.repos.d/CentOS-Base.repo <<EOF
[base]
name=CentOS-7 - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0

[updates]
name=CentOS-7 - Updates - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/7/updates/x86_64/
enabled=1
gpgcheck=0

[extras]
name=CentOS-7 - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/7/extras/x86_64/
enabled=1
gpgcheck=0
EOF

3. 清理并重建缓存

bash 复制代码
yum clean all
yum makecache

八、安装 wget

bash 复制代码
yum install -y wget

验证:

bash 复制代码
wget --version

输出版本号即安装成功。


九、防止 DNS 重启丢失(可选)

bash 复制代码
chattr +i /etc/resolv.conf

若以后需修改 DNS:

bash 复制代码
chattr -i /etc/resolv.conf

十、问题根因总结

问题点 说明
域名无法解析 resolv.conf 未配置 DNS
mirrorlist.centos.org 失效 CentOS 7 官方仓库停止维护
yum 无法获取 repomd.xml 源不可用导致

十一、解决过程

1.虚拟机网络正常

2.DNS 可解析域名

3.yum 源恢复可用

4.wget 成功安装

系统后续可正常安装 git、gcc、python、docker 等开发工具。


十三、完整一键修复脚本(备忘)

bash 复制代码
ping -c 3 8.8.8.8 || exit

cat > /etc/resolv.conf <<EOF
nameserver 8.8.8.8
nameserver 114.114.114.114
EOF

mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/CentOS-* /etc/yum.repos.d/bak/ 2>/dev/null

cat > /etc/yum.repos.d/CentOS-Base.repo <<EOF
[base]
name=CentOS-7 - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0
EOF

yum clean all
yum makecache
yum install -y wget

结束语

这个问题表面看是 yum 报错,

本质是 DNS 未配置 + CentOS7 官方源下线 共同导致。

按本文流程排查即可一次性彻底解决。

相关推荐
哈基咪怎么可能是AI3 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行19 小时前
Linux和window共享文件夹
linux
木心月转码ing1 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
崔小汤呀2 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应2 天前
vi编辑器使用
linux·后端·操作系统
何中应2 天前
Linux进程无法被kill
linux·后端·操作系统
何中应2 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应2 天前
Linux常用命令
linux·操作系统
葛立国2 天前
从 / 和 /dev 说起:Linux 文件系统与挂载点一文理清
linux