CentOS 上降级 RPM 版本

CentOS 上降级 RPM 版本

我正在尝试降级我的RPM软件包本身的版本,而不是仅仅降级其他软件包的 .rpm。

我正在尝试创建一些 .rpm 文件,但目标计算机安装了旧版本RPM,看起来我当前提供的 .rpm 使用较新的库。

[root@lonlx1071b11 tmp]# rpm -ivh agents-1.0-1.x86_64.rpm
error: Failed dependencies:
    rpmlib(FileDigests) <= 4.6.0-1 is needed by agents-1.0-1.x86_64
    rpmlib(PayloadIsXz) <= 5.2-1 is needed by agents-1.0-1.x86_64

我当前的RPM版本是:

root@localhost tmp]# rpm --version
RPM version 4.11.3

当前目标RPM版本是:

[root@lonlx1071b11 ~]# rpm --version
RPM version 4.4.2.3

当我尝试yum downgrade rpm-4.4.2.3-36.el5_11.x86_64.rpm

我收到依赖错误。删除RPM并重新安装它也不起作用,因为它说我尝试删除yum并且受到保护。所以我假设yum正在使用RPM

如果有一个明显的解决方案,我很抱歉,但我没有进行大量研究,而且我似乎无法真正找到解决方案。

如果需要,我可以发布依赖性错误,但它们相当大。我暂时将它们排除在外,以使问题更易于阅读。

答案1

根据http://rpm.org/max-rpm-snapshot/ch-rpm-b-command.html

我可以使用 --rcfile 来使用一组不同的 RPM 默认值。

不幸的是,我对目标的访问受到限制,因此我无法获取该目标的 rcfile。我最终只是旋转了 CentOS 的早期映像,该映像使用目标 rpm 版本并再次创建了软件包。

相关内容