Centos 7 阿里yum源 [Errno 14] HTTP Error 404 – Not Found 问题解决方案
Linux、CentOS、VMware问题集合可以看这篇文章
Linux各种问题报错集合 一篇文章解决Linux基本能遇到的所有问题 未来会持续更新
Centos7 阿里yum源 [Errno 14] HTTP Error 404 – Not Found 问题解决方案
这个问题的原因是阿里源没有配置好或者不是最新的,需要重新配置阿里源
我更新是选择了的阿里的源,同样也可以选择网易163或者其他的。
网址:阿里云开源镜像站
更换源方法如下:
在镜像站首页找到自己的Linux版本(我的是CentOS 7.6),点击help。新打开的网页中详细的说明了如何备份,如何更换镜像源(在Linux的Terminal也就是命令行中):输入:
1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS5:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
CentOS6:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS7:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、之后运行yum makecache生成缓存
yum makecache
PS:
更换完源进行下载或者生成缓存时可能遇到以下错误:
1.
[Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" Trying other mirror.
[Errno 14] PYCURL ERROR 7 - "couldn't connect to host" Trying other mirror.
[Errno 256] No more mirrors to try.
有效的解决方法:
yum clean all
rpm --rebuilddb
执行完上述两条语句重新使用yum下载或者生成缓存即可成功
2.报错:
Loaded plugins: fastestmirror, langpacks, priorities
Repository epel is listed more than once in the configuration
Cleaning repos: base epel extras updates
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
[[email protected] yum.repos.d]# yum makecache
Loaded plugins: fastestmirror, langpacks, priorities
Repository epel is listed more than once in the configuration
Determining fastest mirrors
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
http://mirrors.aliyun.com/centos/%24releasever/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found
Trying other mirror.
To address this issue please refer to the below wiki article
解决方法:
问题是HTTP请求失败,尝试本地访问之前wget下来的 CentOS-Base.repo 发现其中的:
http://mirrors.aliyun.com/centos/ r e l e a s e v e r / o s / releasever/os/ releasever/os/basearch/
等URL通过http的形式根本无法访问,此时将变量 r e l e a s e v e r 改 为 7 ( 我 的 系 统 是 c e n t o s 7 ) , 发 现 可 以 访 问 了 , 顺 便 将 所 有 的 变 量 releasever改为7(我的系统是centos 7),发现可以访问了,顺便将所有的变量 releasever改为7(我的系统是centos7),发现可以访问了,顺便将所有的变量releasever都改为7。感觉这个变量$releasever根本就没起作用呀。
改完之后,执行yum clean all 以及 yum makecache 成功。
命令如下
sed -i s#\$releasever#7#g CentOS-Base.repo
推荐阅读
-
yum源 报错:[Errno 14] HTTP Error 404 - Not Found
-
Centos 7 阿里yum源 [Errno 14] HTTP Error 404 – Not Found 问题解决方案
-
centos7 yum 出现 [Errno 14] HTTP Error 404 - Not Found 的解决方法
-
centos 7 yum安装失败(出现repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found)的解决方法
-
centos7 yum 更新出现 [Errno 14] HTTP Error 404 - Not Found 的解决方法