yum自建仓库报错问题记录

前言:因为公司业务的某些场景,需要在离线状态下也能安装某些应用,所以把所用到的应用和应用所依赖的包放一起,统一建了一个私有仓库,但是在yum install过程中一直报错,提示:file:///mnt/repo/base/repodata/repomd.xml: [Error 14] curl#37 - “Couldn’t open file /mnt/repo/base/repodata/repomd.xml”, 在网上查了很多办法,试了很多坑,最后在这总结一下,希望对大家有所帮助

安装工具

报错的原因应该是:xml记录了yum源下rpm包的一些信息,如果没有这些信息或者这些信息不对应,就会出现上面的报错。而最简单的解决方法就是重新配置生成repomd.xml文件,我们可以通过createrepo命令生成。 

yum install createrepo

查看下我的repo仓库路径在哪

cat /etc/yum.repos.d/base.repo
[base]
name=epel Repository
baseurl=file:///opt/base_rpms    #仓库路径
enabled=1
gpgcheck=0

然后生成repomd.xml文件

cd /opt
createrepo  ./base_repos/    
#执行后显示以下内容应该就没问题啦
Spawning worker 0 with 8 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other matadata
Generating sqlite DBs
Sqlite DBs complete

一般的话这样就解决问题,如何还不行的话只能继续在网上找大佬帮助啦

如果有想了解更多createrepo命令的小伙伴可以点这里

### 解决CentOS 8中YUM命令错误的方法 对于CentOS 8中的YUM命令出现问题的情况,可以采取一系列措施来解决问题并恢复系统的正常功能。官方支持结束后的系统可能会遇到软件仓库不可用的问题,因此需要调整配置以继续获得必要的更新和支持。 #### 备份和清理配置文件 为了防止意外丢失重要数据,在执行任何更改之前先备份`/etc/yum.repos.d/`目录下的所有文件是一个明智的选择。这可以通过简单的复制操作完成: ```bash cp -r /etc/yum.repos.d ~/yum_repos_backup/ ``` 接着清除该目录内的旧有配置文件,以便重新设置新的资源库链接[^1]。 #### 清理YUM缓存 通过运行以下命令清空本地存储的元数据和其他临时文件,有助于消除由于过期或损坏的数据引起的潜在冲突: ```bash yum clean all ``` 此过程会移除所有已下载的头文件、RPM 文件以及数据库记录,从而确保后续的操作基于最新的在线信息进行处理。 #### 配置使用Vault Repository 鉴于官方已经停止了对某些版本的支持,转向社区维护或者更稳定的替代方案成为必要选项之一。针对这种情况,建议切换至CentOS Vault repository作为主要依赖源。具体做法是在`/etc/yum.repos.d/CentOS-Linux-Vault.repo`创建一个新的repo定义文件,并指定目标版本号(例如8.5.2111),如下所示: ```ini [baseos] name=CentOS-$releasever - BaseOS mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra #baseurl=http://vault.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial [appstream] name=CentOS-$releasever - AppStream mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=AppStream&infra=$infra #baseurl=http://vault.centos.org/$contentdir/$releasever/AppStream/$basearch/os/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial ``` 请注意上述模板适用于大多数场景;如果特定需求存在差异,则需相应调整参数值。 #### 安装兼容性包 考虑到部分应用程序可能依赖于较早版本的OpenSSL或其他组件,安装像`compat-openssl10`这样的向后兼容性的软件包可以帮助解决因API变更引发的应用层面上的问题[^3]。 ```bash dnf install compat-openssl10 ``` 以上步骤综合起来能够有效应对CentOS 8上可能出现的各种YUM相关问题,保障系统的稳定性和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值