centos7执行yum命令时报:Could not resolve host: mirrorlist.centos.org; Unknown error

项目场景:

打算学习一下docker,所以重新装了一台虚拟机,centos7。安装完成后,通过 yum 命令下载必要软件时报了错误,对此错误进行了分析,解决和记录。


问题描述

通过yum 命令下载软件的时候报错,如下:

java 复制代码
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
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; Unknown error"


 One of the configured repositories failed (Unknown),
 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

原因分析:

下载软件导致,第一想法是网络是否通的,使用命令ping 了百度

java 复制代码
ping www.baidu.com

返回消息正常,说明网络没有问题。

然后通过查找问题,发现是镜像源的问题,可以通过切换镜像源解决。


解决方案:

切换阿里云镜像源。

1.备份之前镜像源

java 复制代码
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2.下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/

centos7

java 复制代码
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

或者

java 复制代码
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

3.运行命令生成缓存

java 复制代码
yum makecache
相关推荐
峰顶听歌的鲸鱼26 分钟前
Kubernetes介绍和部署
运维·笔记·云原生·容器·kubernetes·学习方法
物理与数学38 分钟前
linux 内存分布
linux·linux内核
信创天地1 小时前
自动化运维利器赋能信创:Ansible与SaltStack在国产系统的部署与批量管理实战
运维·自动化·ansible
东城绝神1 小时前
《Linux运维总结:基于ARM64+X86_64架构使用docker-compose一键离线部署MySQL8.0.43 NDB Cluster容器版集群》
linux·运维·mysql·架构·高可用·ndb cluster
creator_Li1 小时前
即时通讯项目--(1)环境搭建
linux·运维·ubuntu
Ka1Yan2 小时前
Docker:基本概念与快速入门
运维·docker·容器
Mr'liu3 小时前
MongoDB 7.0 副本集高可用部署
linux·mongodb
文静小土豆3 小时前
Rocky Linux 二进制 安装K8S-1.35.0高可用集群
linux·运维·kubernetes
小技工丨3 小时前
华为TaiShan 200 2280 ARM服务器虚拟化部署完整指南
运维·服务器·arm开发
暮云星影4 小时前
二、linux系统 应用开发:整体Pipeline流程
linux·arm开发