我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!


喜讯:国内、香港、海外云服务器租用特惠活动,2核/4G/10M仅需31元每月,点击抢购>>>

点击这里点击这里进入阿里云ECS官方页面,立即免费体验云服务器ECS>>>

点击这里阿里云老客户点击这里申请VIP账号,享终身8折优惠(续费也打折)>>>

本文介绍在Linux系统的ECS实例中执行yum命令失败,提示“HTTP Error 404 -Not Found Trying other mirror”错误时的问题原因和解决方案。

问题描述

在Linux系统的ECS实例中执行yum命令(如yum -y install XXXyum listyum search XXX等)失败,出现类似如下错误信息。

 

http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not FoundTrying other mirror.

 

http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not FoundTrying other mirror.

问题原因

出现该问题可能有以下原因:

  • CentOS 6/8的源地址内容已移除:CentOS 6与CentOS 8操作系统结束了生命周期(EOL),源地址内容已移除。您可以参考切换CentOS 6/8的源地址修复该问题。

  • YUM仓库(repository)配置问题,导致无法正常解析,您可以参考将CentOS默认Base源更换为阿里Base源修复该问题。

  • 环境变量/etc/profile文件中配置了HTTP代理,导致无法正常解析,您可以参考修改环境变量配置文件/etc/profile修复该问题。

  • 缺少centos-release软件包,导致URL中$releasever变量无法正常解析,您可以参考安装centos-release软件包修复该问题。

解决方案

切换CentOS 6/8的源地址

CentOS 6与CentOS 8操作系统版本结束了生命周期(EOL),Linux社区已不再维护该操作系统版本。按照社区规则,CentOS 6/8的源地址内容已移除。当您在CentOS 6/8系统内继续使用默认配置的源地址时会发生报错。建议您先切换CentOS 6/8的源地址,然后再进行操作。具体操作,请参见CentOS 6 EOL如何切换源?和CentOS 8 EOL如何切换源?。

将CentOS默认Base源更换为阿里Base源

本节以CentOS 7.4系统版本的Base源为例进行介绍,其他系统及版本请参见阿里云官方镜像站。

  1. 远程连接ECS实例。

    具体操作,请参见连接方式概述

  2. 执行以下命令,备份异常的Base源文件。

     

    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  3. 执行以下命令,下载并安装Base源。

     

    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
  4. 重新执行yum相关命令,确保可以正常使用。

修改环境变量配置文件/etc/profile

  1. 远程连接ECS实例。

    具体操作,请参见连接方式概述

  2. 依次执行如下命令,确认能ping通,且80端口也能通。

    • 若不能连通,说明可能是网络问题,请排查网络后重试。

    • 若可以正常ping通,请继续执行步骤。

       

      ping mirrors.cloud.aliyuncs.comtelnet mirrors.cloud.aliyuncs.com 80
  3. 执行以下命令,查看YUM仓库能否正常访问。

     

    curl http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/repodata/repomd.xml -v

    系统显示类似如下,返回404状态码,且配置了HTTP代理。

    404

  4. 修改环境变量文件/etc/profile

    1. 执行如下命令,打开环境变文件/etc/profile

       

      vim /etc/profile
    2. i进入编辑模式,在HTTP代理前加注释该配置或根据需要修改代理。

      delete proxy

    3. 编辑完成后,按Esc键,并输入:wq保存退出文件。

    4. 执行如下命令,使环境变量配置生效。

       

      source /etc/profile
  5. 重新执行yum相关命令,确保可以正常使用。

安装centos-release软件包

本节以安装CentOS 7.4系统版本的centos-release软件包为例进行介绍,其他系统及版本请参见阿里云官方镜像站。

  1. 远程连接ECS实例。

    具体操作,请参见连接方式概述

  2. 下载并安装centos-release软件包。

     

    wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpmrpm -ivh centos-release-7-9.2009.0.el7.centos.x86_64.rpm
  3. 重新执行yum相关命令,确保可以正常使用。




推荐:TOP云智能建站优惠活动,仅880元即可搭建一个后台管理五端合一的智能网站(PC网站、手机网站、百度智能小程序、微信小程序、支付宝小程序),独享百度搜索SEO优势资源,让你的网站不仅有颜值有排面,更有排名,可以实实在在为您带来效益,请点击进入TOP云智能建站>>>,或咨询在线客服了解详情。


我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

131-3501-0006

上班时间

周一到周五

公司电话

130-0743-9476

二维码
线