有没有办法通过保持最新版本安装忽略rpm版本冲突?
例如。 我想在AIX中安装gawk。 我有一个文件夹中所有需要的RPM
bash-4.2-11.aix5.1.ppc.rpm gawk-4.0.2-1.aix5.1.ppc.rpm gettext-0.10.40-8.aix5.2.ppc.rpm info-4.13a-2.aix5.1.ppc.rpm libsigsegv-2.10-1.aix5.2.ppc.rpm readline-6.2-4.aix5.1.ppc.rpm
我试着用rpm来安装它们,给rpm -ivh *.rpm这样rpm就会自动处理安装顺序。
但是我得到:
package bash-4.2-11 is already installed package gettext-0.17-7 (which is newer than gettext-0.10.40-8) is already installed package info-5.0-1 (which is newer than info-4.13a-2) is already installed package readline-6.2-4 is already installed file /opt/freeware/bin/msgcomm from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/msgfmt from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/msgmerge from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/msgunfmt from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/ngettext from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/xgettext from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/lib/libintl.a from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/gettext from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/bin/msgcmp from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/share/locale/locale.alias from install of gettext-0.10.40-8 conflicts with file from package gettext-0.17-7 file /opt/freeware/info/info-stnd.info.gz from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /opt/freeware/info/info.info.gz from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /etc/X11/applnk/Utilities/info.desktop from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /opt/freeware/man/man1/info.1 from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /opt/freeware/man/man1/infokey.1 from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /opt/freeware/man/man1/install-info.1 from install of info-4.13a-2 conflicts with file from package info-5.0-1 file /opt/freeware/man/man5/info.5 from install of info-4.13a-2 conflicts with file from package info-5.0-
那么,有什么办法可以忽略gettext和info冲突吗? 我不想使用武力,并用旧版本replace它们。
我知道,如果我尝试手动安装rpms而不安装gettext和info rpms,那么gawk的安装将会成功。
我想find一个解决scheme,不涉及我以正确的顺序手动安装rpms。
编辑:我有真-Uvh与rpm -Uvh *.rpm的问题是,而不是安装新的rpm二进制文件解决它们的依赖关系与已安装或在文件夹中,它只输出:
package gettext-0.17-7 (which is newer than gettext-0.10.40-8) is already installed package info-5.0-1 (which is newer than info-4.13a-2) is already installed package readline-6.2-4 is already installed
并停止不进入其他需要安装的RPM。 我相信这不是一个正常的行为,我不知道这是否与一个问题在rpm(我使用旧版本 – 版本3)。
由于您正在更新现有软件包,而不是专门安装软件包,因此需要使用更新选项-U而不是安装选项-i 。 这将允许您一次安装和更新软件包。
rpm -Uvh *.rpm
所以,
我在这里发表我的部分答案,因为我认为我的主要问题可能有点误导。
rpm -Uvh *.rpm是要走的路。 它会更新已安装的软件包的新版本,并且还会安装系统中尚未安装的新RPM。
但! 当您尝试使用rpm -Uvh *.rpm安装rpms rpm -Uvh *.rpm如果该文件夹中的软件包与已安装的软件包相同或较旧,则不会继续执行。 该命令只是输出已经安装的软件包,并在那里停止而不继续安装其他rpms。
我认为这是我正在使用的旧版rpm(3版)的一个buggy行为。 我不知道这是否被认为是正常的,如果它也发生在最新版本的rpm。 也许你可以提供更多的信息。
你没有指定,但看起来你正在使用Michael Perzl的RPM 。
如果是这种情况,请按照常见问题中的说明操作:
gettext-0.17来避免使用gettext-0.10时发生的已知错误 rpm -Uvh安装时,请使用新版本replace现有软件包。