如何解决CentOS 6下安装RPM包时无法获取仓库元数据(repomd.xml)的问题
首先先还原你遇到的错误信息:
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Group Process
Loading mirror speeds from cached hostfile
http://vault.centos.org/6.10/os/x86_64/repodata/repomd.xml: [Errno 14] problem making ssl connection
Trying other mirror.
http://vault.centos.org/6.10/os/x86_64/repodata/repomd.xml: [Errno 14] problem making ssl connection
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: C6.10-base. Please verify its path and try again
这个问题我之前处理过好几次,本质原因是CentOS 6在2020年11月就终止了所有官方支持,包括SSL证书维护、软件源更新,所以会出现SSL连接失败、元数据拉取不到的情况。下面给你几个可行的解决方法:
方法一:修改现有仓库为非SSL地址
既然SSL连接出问题,我们直接改用HTTP协议访问Vault源:
- 先备份当前的仓库配置,避免改坏了没法恢复:
cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak - 编辑CentOS基础仓库配置文件:
vi /etc/yum.repos.d/CentOS-Base.repo - 找到
[C6.10-base]、[C6.10-updates]等段,把里面的baseurl从https://vault.centos.org/...改成http://vault.centos.org/...(去掉开头的s);同时可以把gpgcheck改成0,避免证书验证失败的问题 - 保存退出后,清理旧缓存并生成新缓存:
yum clean all && yum makecache
方法二:替换为第三方归档源
如果Vault源还是不稳定,可以换成第三方维护的CentOS 6归档源:
- 同样先备份仓库配置:
cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak - 删除原有所有仓库文件:
rm -f /etc/yum.repos.d/*.repo - 创建新的
CentOS-Base.repo文件:vi /etc/yum.repos.d/CentOS-Base.repo - 粘贴以下内容进去:
[C6.10-base] name=CentOS-6.10 - Base baseurl=http://mirrors.aliyun.com/centos-vault/6.10/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6 [C6.10-updates] name=CentOS-6.10 - Updates baseurl=http://mirrors.aliyun.com/centos-vault/6.10/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6 [C6.10-extras] name=CentOS-6.10 - Extras baseurl=http://mirrors.aliyun.com/centos-vault/6.10/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6 - 保存后清理缓存并生成新缓存:
yum clean all && yum makecache
方法三:临时跳过仓库检查安装本地RPM
如果你只是想安装手里的本地RPM包,不想折腾仓库配置,可以直接让yum跳过仓库元数据检查:
yum localinstall --nogpgcheck your-package.rpm
把your-package.rpm换成你实际要安装的文件名就行,这个命令会直接安装本地包,不会去拉取仓库元数据。
内容的提问来源于stack exchange,提问作者base lufin

