CentsOS 7 “Could not resolve host: mirrorlist.centos.org; 未知的错误”问题解决

目录

  • 一、问题背景
  • 二、安装wget
    • [2.1 下载wget](#2.1 下载wget)
    • [2.2 上传wget安装包到linux](#2.2 上传wget安装包到linux)
    • [2.3 安装wget](#2.3 安装wget)
  • 三、安装yum
    • [3.1 卸载python](#3.1 卸载python)
    • [3.2 删除yum](#3.2 删除yum)
    • [3.3 下载安装包](#3.3 下载安装包)
    • [3.5 测试yum](#3.5 测试yum)
  • 四、处理源yum
    • [4.1 删除yum源](#4.1 删除yum源)
    • [4.2 下载阿里云yum源](#4.2 下载阿里云yum源)
    • [4.3 清除和生成yum缓存](#4.3 清除和生成yum缓存)

一、问题背景

在VMware安装完CentOS 7镜像后,发现yum无法使用,报错信息如下:

复制代码
[root@linux ~]# yum install -y yum-utils
已加载插件:fastestmirror
Determining fastest mirrors
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 未知的错误"


 One of the configured repositories failed (未知),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this:

     1. Contact the upstream for the repository and get them to fix the problem.

     2. Reconfigure the baseurl/etc. for the repository, to point to a working
        upstream. This is most often useful if you are using a newer
        distribution release than is supported by the repository (and the
        packages for the previous distribution release still work).

     3. Run the command with the repository temporarily disabled
            yum --disablerepo=<repoid> ...

     4. Disable the repository permanently, so yum won't use it by default. Yum
        will then just ignore the repository until you permanently enable it
        again or use --enablerepo for temporary usage:

            yum-config-manager --disable <repoid>
        or
            subscription-manager repos --disable=<repoid>

     5. Configure the failing repository to be skipped, if it is unavailable.
        Note that yum will try to contact the repo. when it runs most commands,
        so will have to try and fail each time (and thus. yum will be be much
        slower). If it is a very temporary problem though, this is often a nice
        compromise:

            yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true

Cannot find a valid baseurl for repo: base/7/x86_64

从报错上来看是解析不了mirrorlist.centos.org这个网址

ping了一下百度,发现是可以ping通的,说明网络没有问题

bash 复制代码
[root@linux yum.repos.d]# ping www.baidu.com
PING www.a.shifen.com (39.156.66.14) 56(84) bytes of data.
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=1 ttl=128 time=6.37 ms
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=2 ttl=128 time=5.66 ms
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=3 ttl=128 time=9.42 ms
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=4 ttl=128 time=6.34 ms

在网上查了有好几篇类似的文章说是dns或者修改/etc/resolv.conf文件都没有用

最后参考了https://blog.csdn.net/weixin_53588804/article/details/140648651解决问题,但是该文章有几步冗余的操作,于是对其进行整理,重新梳理了一下操作,通过本文记录

二、安装wget

由于新系统中没有wget,先安装wget(如果系统中已经有wget可直接调到第三步)

2.1 下载wget

阿里云镜像库 https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages

在该界面下载 wget-1.14-18.el7_6.1.x86_64.rpm

2.2 上传wget安装包到linux

创建对应文件夹

bash 复制代码
mkdir /home/wget

进入文件夹

bash 复制代码
cd /home/wget

将刚才下载的文件上传到该位置

2.3 安装wget

使用rpm安装wget

复制代码
rpm -ivh wget-1.14-18.el7_6.1.x86_64.rpm

至此wget安装完毕

三、安装yum

3.1 卸载python

bash 复制代码
##强制删除已安装程序及其关联
rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps

##删除所有残余文件 ##xargs,允许你对输出执行其他某些命令
whereis python |xargs rm -frv -rf

##验证删除,返回无结果
whereis python

3.2 删除yum

bash 复制代码
rpm -qa|grep yum|xargs rpm -ev --allmatches --nodeps
whereis yum |xargs rm -frv -rf

3.3 下载安装包

创建安装包下载文件夹

复制代码
mkdir /home/wget/rpm

进入文件夹

复制代码
cd /home/wget/rpm

下载安装包

bash 复制代码
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/lvm2-python-libs-2.02.187-6.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/libxml2-python-2.9.1-6.el7.5.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages//python-libs-2.7.5-89.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-ipaddress-1.0.16-2.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-backports-1.0-8.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-2.7.5-89.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-pycurl-7.19.0-19.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-urlgrabber-3.10-10.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-setuptools-0.9.8-7.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-kitchen-1.1.1-5.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/python-chardet-2.2.1-3.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/rpm-python-4.11.3-45.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-utils-1.1.31-54.el7_8.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-plugin-aliases-1.1.31-54.el7_8.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-plugin-protectbase-1.1.31-54.el7_8.noarch.rpm
wget https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm

3.4 安装替换依赖

bash 复制代码
rpm -ivh --nodeps --force *.rpm

3.5 测试yum

bash 复制代码
yum

显示以下信息即为成功:

bash 复制代码
[root@linux rpm]# yum
已加载插件:aliases, fastestmirror, protectbase
您需要给出命令
Usage: yum [options] COMMAND

List of Commands:

alias          Adds or lists aliases
check          检查 RPM 数据库问题
check-update   检查是否有可用的软件包更新
clean          删除缓存数据
deplist        列出软件包的依赖关系
下面省略...

四、处理源yum

4.1 删除yum源

bash 复制代码
rm -rf /etc/yum.repos.d/*

4.2 下载阿里云yum源

bash 复制代码
# 切换目录
cd /etc/yum.repos.d/
# 下载
wget http://mirrors.aliyun.com/repo/Centos-7.repo

4.3 清除和生成yum缓存

bash 复制代码
## 清除缓存
yum clean all

## 生成缓存
yum makecache

至此问题洁具额,接着执行之前报错的命令即可

参考文章:https://blog.csdn.net/weixin_53588804/article/details/140648651

相关推荐
Dachui_11227 分钟前
ZeroNews LFS 使用教程:NAS 文件发布为公网 HTTPS 文件空间,不传网盘、按人授权、免登录分享
运维·网络安全·文件共享·团队协作·nas
智能运维指南17 分钟前
2026年企业自动化运维平台选型:四类架构的差异与决策逻辑
运维·人工智能·嘉为蓝鲸
探索云原生17 分钟前
KubeClipper 1.7.0 发布:Operation 优化与 Kubernetes 1.37 支持
linux·docker·云原生·kubernetes·go
szephyr28 分钟前
Nginx 反向代理实战:从 502、跨域到 HTTPS,一次打通
运维·nginx·https·部署·反向代理
一技安身1 小时前
【信创】docker-26.0.2.tgz 原理 + 完整安装
linux·运维·服务器
程曦曦1 小时前
MySQL 生产库误删 98 张表后的时间点恢复实战:从 binlog 解析到资金对账
linux·数据结构·其他·算法·ubuntu·运维开发
Dachui_11221 小时前
内网穿透 Webhook 告警实战:客户端离线、应用探测、资源删除全覆盖
运维·远程工作·内网穿透·devops·webhook·服务器监控·应用探测
数据智研1 小时前
【数据分享】300个城市-5G试点城市DID数据(2014-2025)
大数据·运维·人工智能·信息可视化·数据分析
honsor1 小时前
工业级网口温湿度变送器 ModbusTCP 机房动环环境监测终端
运维·网络·人工智能·物联网·安全·云计算·智能温湿度监测系统
赵民勇1 小时前
systemd-mount命令详解
linux