web-dev-qa-db-ja.com

以前のインストールからのRPMインストールファイルの競合

ファイルの競合によりインストールが失敗します。 Red Hat Linux 7でのみこの問題に直面しています。同じスペックファイルがUbuntuや他のLinuxディストリビューションでも機能します。

エコーを入れてみました%pre%post%preunおよび%postunセクションですが、これらのメッセージに到達したことはありません。私は試した %dump何も出力しなかったスペックファイルの先頭。 specファイルの実行をトレースするにはどうすればよいですか?

%files
%defattr(-,root,root,-)
@CPACK_PACKAGING_INSTALL_PREFIX@/sbin/MyExe
@CPACK_PACKAGING_INSTALL_PREFIX@/share/doc/@CPACK_PACKAGE_FILE_NAME@/myconf.conf
@CPACK_PACKAGING_INSTALL_PREFIX@/share/doc/@CPACK_PACKAGE_FILE_NAME@/README
%if @IS_RHEL7@
/etc/systemd/system/myoverride.conf
%endif

インストール中のエラー:

Preparing packages...
    file /etc/systemd/system/myoverride.conf from install of mypackage-5.0.1.x86_64 conflicts with file from package mypackage-4.11.1.x86_64
    file /usr/sbin/myexe from install of mypackage-5.0.1.x86_64 conflicts with file from package mypackage-4.11.1.x86_64
3
Satyajit Singh

同じrpmを2回インストールすることはできません。したがって、同じrpm(あなたのケースではmypackage)の新しいバージョンをインストールしたい場合; -U | --upgradeオプションを使用する必要があります。 rpmの一般的な使用法は次のとおりです。

rpm -Uvh mypackage-<new-version>.rpm
  • -U:mypackageをこのバージョンにアップグレードします
  • -vh:進行状況を表示します。
7
Chris Maes