在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

相关推荐

  • Ubuntu防火墙使用方法

    安装防火墙 ufw防火墙开启和关闭 修改ufw防火墙规则 ufw命令使用实例

    2022年12月3日
    90900
  • 如何修复Linux系统中已知的系统软件缺陷?

    Linux操作系统的ECS实例某些业务运行异常问题,是由Linux操作系统本身已知的系统软件缺陷导致,若您的ECS实例的操作系统不是最新版本,可以尝试通过手动升级ECS实例的操作系统软件包来修复。 当前已知的Linux系统软件缺陷如下: 可通过升级操作系统中软件解决的Linux ECS实例问题 在CentOS或RHEL 7实例上,启动某个服务或进程时提示端口…

    2023年11月14日
    1.1K00
  • 实用Word技巧分享:快速且批量删除空格、空行 word如何批量删除空格行

    今天我们来聊聊Word查找替换技巧,介绍一下批量删除空格、空行的方法,快来看看吧! 在日常工作中我们经常会碰到以下2个困扰: 如,很多网上下载或拷贝到Word的纯文本形式的资料,最烦的莫过于文档中有一大堆空格或空行(回车符),格式非常混乱,完全不符合排版要求,如图所示。如果要一行一行的删除它们,费时费力。 为了快速让文本规范整洁,效果如图所示。 接下来,教大…

    2024年5月7日
    1.4K00
  • Docker常用命令

    列出所有容器ID 查看所有运行或者不运行容器 停止所有的container(容器),这样才能够删除其中的images: 如果想要删除所有container(容器)的话再加一个指令: 查看当前有些什么images 删除images(镜像),通过image的id来指定删除谁 想要删除untagged images,也就是那些id为的image的话可以用 要删除全…

    2022年11月19日
    1.0K00
  • Truenas webdav共享服务数据备份

    第一步 首先创建数据集 第二步 启用webdav共享服务,并配置账号密码(已启用可忽视) 第三步 配置数据集使用webdav共享服务 这样webdav服务就已经打开了 配置webdav服务上传文件大小限制,进入/usr/local/etc/apache24/Includes 修改webdav文件,http修改webdav.conf ,https修改webda…

    2023年3月13日
    1.8K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信