在Linux中执行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 Found
Trying other mirror.
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found
Trying 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默认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.com telnet 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/profilevim /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-7.1908.0.el7.centos.x86_64.rpm rpm -ivh centos-release-7-7.1908.0.el7.centos.x86_64.rpm
  3. 重新执行yum相关命令,确保可以正常使用。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10256

(0)
凯影的头像凯影
上一篇 2023年11月27日 下午4:45
下一篇 2023年11月29日 下午3:52

相关推荐

  • Windows server 2008 R2 服务报错14001解决方案

    错误 14001:因为应用程序的并行配置不正确 有关详细信息 请参阅应用程序事件日志 或使用命令行 sxstrace.exe 工具 今日通过服务管理器重新启动mysql服务时发现报错14001,解决方案如下: 打开左下角服务管理器,点击功能,然后添加功能,添加 Framework 3.51全部功能,这样就可以去服务管理器中启动服务了!!!

    2022年11月22日
    1.7K00
  • nginx配置负载均衡–实战项目(适用于轮询、加权轮询、ip_hash)

    两台服务器: 业务需求:有两台服务器,一台供于线上使用(172.16.10.10),一台供于研发使用(172.16.10.20) 如果线上的服务器挂了,需要将所有请求转移到研发的机器上,以确保线上服务正常使用; 正常时间还是线上使用线上的服务器,研发用研发的服务器;只有在线上服务器挂了的时候才会使用备用的研发服务器; 需求实现:使用nginx负载均衡来实现;…

    2023年12月25日
    84000
  • centos 升级内核

    一、关于内核版本的定义: 版本性质:主分支ml(mainline),稳定版(stable),长期维护版lt(longterm) 版本命名格式为 “A.B.C”: 数字 A 是内核版本号:版本号只有在代码和内核的概念有重大改变的时候才会改变,历史上有两次变化: 第一次是1994年的 1.0 版,第二次是1996年的 2.0 版,第三次是2011年的 3.0 版…

    2023年3月16日
    1.1K00
  • Nginx升级版本

    一:宝塔Nginx升级 在宝塔界面点击软件管理->运行环境->Nginx的设置 选择切换版本->选择想要升级的版本,点击切换等待安装成功 二:Linux下升级nginx版本(源码包方式) 方式:使用源码包的方式 老版本:nginx/1.13.0 新版本:nginx/1.22.0 一:下载源码包 wget http://nginx.org/d…

    2022年8月2日
    1.6K00
  • Ubuntu 启用root账户并开启远程登录

    1.启用root账户 修改root用户密码,输入下方命令后,还需要输入当前普通用户的密码进行身份验证,然后修改root用户的新密码 sudo passwd root 2、开启远程登录 执行下方命令后开启root用户的远程登录 此时就能使用root账户成功登录了

    2022年6月11日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信