在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创建和删除用户

    Ubuntu与其他Linux发行版一样,是一个多用户操作系统。每个用户可以具有不同的权限级别和各种命令和GUI应用程序的特定设置。 了解如何添加和删除用户是Linux用户应该了解的基本技能之一。为能够创建和删除用户,您需要以root或具有sudo权限的用户登录。 在Ubuntu中添加用户方式有两种,第一种是使用adduser或者useradd命令。第二种通过…

    2023年3月10日
    38400
  • 清华源连接失败原因与解决 CondaHTTPError SSLError

    Conda 清华源连接失败原因与解决 问题描述 在我设置好国内源之后,用conda创建虚拟环境,下载python版本时出现以下错误。 我的~/.condarc内容(即conda channels设置)如下 解决方案 在我查阅了多篇博客,尝试了多种方案之后,终于找到两种解决方案: 两种方法选一种即可 原因分析 https协议比http协议多了SSL,TLS等验…

    2023年3月23日
    60200
  • Xcopy-windows命令行复制命令详解

    XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝系统文件;使用时源盘符、源目标路径名、源文件名至少指定一个;选用/S时对源目录下及其子目录下的所有文件进行COPY。除非指定/E参数,否则/S不会拷贝空目录,若不指定/S参数,则XCOPY只拷贝源目录本身的文件,而不涉及其下的子目录;选用/V参数时,对拷贝的扇区都进行较验,但速度…

    2023年6月9日
    39700
  • windows系统下如何更改远程连接端口并在防火墙内放行

    步骤一:通过注册表修改远程端口 众所周知windows系统默认的远程桌面端口是3389,这样对于开启远程桌面的计算机有一定的安全威胁,修改远程桌面的默认端口可以提高系统的安全性! 按“win键+r打开运行,输入 “regedit”点确定; 在注册表编辑器里面打开“HKEY_LOCAL_MACHINE”文件; 继续打开列出文件中的system”文件 继续打开s…

    2022年6月9日
    1.8K10
  • Windows2003磁盘扩容

    1、先把需要扩容的磁盘卷格式化,不用新建分区; 2、使用cmd命令打开命令行界面 3、输入diskpart命令,打开diskpart界面; 4、使用list volume 命令查看当前的volume卷情况 5、使用select volume 命令选择需要扩容的盘,例如:select volume 1 ,选中之后再用list volume 查看,被选中的vol…

    2023年5月8日
    30200

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信