服务器 
首页 > 服务器 > 浏览文章

详解CentOS8更换yum源后出现同步仓库缓存失败的问题

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

问题起因:一开始CentOS 8默认的yum源是能够正常使用的,但使用如下命令安装了Development Tools之后:

yum groupinstall -y "Development Tools"

不知道为啥就开始出现同步仓库缓存失败的问题,无法正常安装一些工具包。错误提示如下:

[root@localhost /etc/yum.repos.d]# yum makecache
CentOS-8.0 - AppStream                  19 B/s | 38 B   00:02  
CentOS-8.0 - Base                     24 B/s | 38 B   00:01  
CentOS-8.0 - Extras                    8.4 B/s | 38 B   00:04  
同步仓库 'AppStream' 缓存失败,忽略这个 repo。
同步仓库 'BaseOS' 缓存失败,忽略这个 repo。
同步仓库 'extras' 缓存失败,忽略这个 repo。
元数据缓存已建立。
[root@localhost /etc/yum.repos.d]#

于是根据错误提示信息到网上查找相关解决方案,大部分都是说更换阿里的yum源,然后就按官方文档的说明进行了更换:

https://developer.aliyun.com/mirror/centos

本来以为已经顺利解决了,想不到还有坑,重新建立元数据缓存时依旧提示同步仓库缓存失败:

[root@mesos-master /etc/yum.repos.d]# yum makecache
CentOS-8.0 - AppStream - mirrors.aliyun.com          0.0 B/s |  0 B   00:24  
CentOS-8.0 - Base - mirrors.aliyun.com            0.0 B/s |  0 B   00:32  
CentOS-8.0 - Extras - mirrors.aliyun.com           0.0 B/s |  0 B   00:32  
CentOS-8.0 - Epel                       2.3 MB/s | 6.0 MB   00:02  
WANdisco SVN Repo 1.9                     2.0 kB/s | 121 kB   01:01  
同步仓库 'AppStream' 缓存失败,忽略这个 repo。
同步仓库 'base' 缓存失败,忽略这个 repo。
同步仓库 'extras' 缓存失败,忽略这个 repo。
上次元数据过期检查:0:00:01 前,执行于 2020年03月23日 星期一 10时26分48秒。
元数据缓存已建立。
[root@mesos-master /etc/yum.repos.d]#

然后百思不得其解,我寻思系统默认的yum源可能因为网络的原因连不上也就算了,国内的源不应该啊,是不是配置有问题呢?结果还真是,baseurl中的$releasever和$basearch占位符不知为何无效。故将$releasever改为8,将$basearch改为x86_64后问题解决。修改后的各个配置文件内容如下:

### cat CentOS-Base.repo ###
[base]
name=CentOS-8 - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=https://mirrors.aliyun.com/centos/8/BaseOS/x86_64/os/
    http://mirrors.aliyuncs.com/centos/8/BaseOS/x86_64/os/
    http://mirrors.cloud.aliyuncs.com/centos/8/BaseOS/x86_64/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

### cat CentOS-AppStream.repo ###
[AppStream]
name=CentOS-8 - AppStream - mirrors.aliyun.com
failovermethod=priority
baseurl=https://mirrors.aliyun.com/centos/8/AppStream/x86_64/os/
    http://mirrors.aliyuncs.com/centos/8/AppStream/x86_64/os/
    http://mirrors.cloud.aliyuncs.com/centos/8/AppStream/x86_64/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

### cat CentOS-Extras.repo ###
[extras]
name=CentOS-8 - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=https://mirrors.aliyun.com/centos/8/extras/x86_64/os/
    http://mirrors.aliyuncs.com/centos/8/extras/x86_64/os/
    http://mirrors.cloud.aliyuncs.com/centos/8/extras/x86_64/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

### cat CentOS-Epel.repo ###
[epel]
name=CentOS-$releasever - Epel
baseurl=http://mirrors.aliyun.com/epel/8/Everything/$basearch
enabled=1
gpgcheck=0

### cat CentOS-PowerTools.repo ###
[PowerTools]
name=CentOS-8 - PowerTools - mirrors.aliyun.com
failovermethod=priority
baseurl=https://mirrors.aliyun.com/centos/8/PowerTools/x86_64/os/
    http://mirrors.aliyuncs.com/centos/8/PowerTools/x86_64/os/
    http://mirrors.cloud.aliyuncs.com/centos/8/PowerTools/x86_64/os/
gpgcheck=1
enabled=0
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

### cat CentOS-centosplus.repo ###
[centosplus]
name=CentOS-8 - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=https://mirrors.aliyun.com/centos/8/centosplus/x86_64/os/
    http://mirrors.aliyuncs.com/centos/8/centosplus/x86_64/os/
    http://mirrors.cloud.aliyuncs.com/centos/8/centosplus/x86_64/os/
gpgcheck=1
enabled=0
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

做完以上修改后问题解决,没有再提示同步仓库缓存失败了:

[root@localhost /etc/yum.repos.d]# yum makecache
CentOS-8 - AppStream - mirrors.aliyun.com           2.1 MB/s | 6.5 MB   00:03  
CentOS-8 - Base - mirrors.aliyun.com              1.6 MB/s | 5.0 MB   00:03  
CentOS-8 - Extras - mirrors.aliyun.com             1.8 kB/s | 4.2 kB   00:02  
CentOS-8.0 - Epel                       2.2 MB/s | 6.0 MB   00:02  
WANdisco SVN Repo 1.9                     10 kB/s | 121 kB   00:11  
元数据缓存已建立。
[root@localhost /etc/yum.repos.d]# 
上一篇:详解bash中的初始化机制
下一篇:详解bash中的脚本调试机制
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。