在不卸载旧包的情况下安装 RPM 包

Installing a RPM package without deinstalling the old one

有谁知道如果安装了一个包会发生什么,而旧的包仍然安装?问题是命令 rpm -e <rpm_package> 将卸载并删除旧包。就我而言,我想保留旧包作为备份,我不希望它被删除。

是否可以在安装新包的同时在文件系统中保留旧包(而不删除它)? 提前致谢!

不,不可能。

您可能有两个同名包。但这只有在以下情况下才有可能:

  • 您在交易期间终止了 rpm。然后您可以使用完整的 NEVRA 删除正确的。即,rpm -e bash-5.1.8-2.fc35.x86_64

  • 当包是 multilib 时。即,一个是 i386,另一个是 x86_64

如果您想保留备份,那么我建议您使用 'local' 插件 https://dnf-plugins-core.readthedocs.io/en/latest/local.html 请注意,它会占用大量存储空间。 甚至是 Red Hat Satellite,它可以让您轻松回滚。但这可能是满足您需求的大野兽。