Linux 如何忽略rpm安装中的冲突
我在一个文件夹里有一堆rpm文件。我正在尝试使用以下方式安装它们:Linux 如何忽略rpm安装中的冲突,linux,unix,rpm,aix,Linux,Unix,Rpm,Aix,我在一个文件夹里有一堆rpm文件。我正在尝试使用以下方式安装它们: rpm-ivh*.rpm这样rpm就可以按照正确的安装顺序进行安装 在某些RPM上,我的系统中安装了更新的版本,因此我得到了以下示例: 软件包info-5.0-1(比info-4.13a-2更新)已安装 info-4.13a-2安装的/opt/freeware/man/man1/infokey.1与包info-5.0-1中的文件冲突 有没有办法忽略旧的.rpm文件并解决与已安装的新版本的依赖关系?我想到了武力的选择。但武力如何解
rpm-ivh*.rpm
这样rpm就可以按照正确的安装顺序进行安装
在某些RPM上,我的系统中安装了更新的版本,因此我得到了以下示例:
软件包info-5.0-1(比info-4.13a-2更新)已安装
info-4.13a-2安装的/opt/freeware/man/man1/infokey.1与包info-5.0-1中的文件冲突
有没有办法忽略旧的.rpm文件并解决与已安装的新版本的依赖关系?我想到了武力的选择。但武力如何解决冲突呢?用旧版本覆盖它们,还是忽略它们而保留新版本
欢迎任何想法。从上下文来看,冲突是由软件包的版本引起的。
让我们看一下关于<代码> rpm < /代码>的手册:
--force
Same as using --replacepkgs, --replacefiles, and --oldpackage.
--oldpackage
Allow an upgrade to replace a newer package with an older one.
因此,您可以执行命令rpm-Uvh info-4.13a-2.rpm--force
来解决您的问题。尝试刷新命令:
rpm -Fvh *.rpm
--force
选项将重新安装已安装的软件包或覆盖其他软件包中已安装的文件。你通常不想要这个
如果您告诉rpm
从某个目录安装所有rpm,那么它就是这样做的<代码>rpm将不会忽略为安装列出的rpm。您必须手动从列表(或目录)中删除不需要的RPM。它将始终使用“安装的最新RPM”覆盖文件,无论您以何种顺序执行
您可以删除旧RPM,RPM
将解决与已安装RPM的较新版本的依赖关系。但是,只有当所有要安装的RPM都不完全依赖于旧版本时,这才有效
如果您确实需要相同RPM的不同版本,那么RPM必须是相同的。然后,您可以告诉rpm
将特定rpm安装到不同的目录。如果文件没有冲突,那么您可以使用rpm-i
安装不同的版本(zypper-in
不能安装同一rpm的不同版本)。例如,我在工作中将ruby gems打包为可重新定位的RPM。所以我可以安装同一个gem的不同版本
我不知道您的rpm在哪些文件上存在冲突,但如果所有这些文件都是“只是”手册页,那么您可能只需使用rpm-I--replacefiles
用旧文件覆盖新文件。这样做的唯一问题是,它可能会让正在阅读旧版手册的人感到困惑,并认为它是针对实际版本的。另一个问题是rpm--verify
命令。如果旧软件包覆盖了一些文件,它将投诉新软件包
这可能是没有回答我问题的?的副本吗。就像我说的,我想让新软件包保持安装状态。不替换为旧的…刷新命令仅更新系统中已有的包。如果我想安装一个新的软件包,那就没用了……我认为我们不能在服务器上安装两个不同版本的软件包。