パッケージのバージョンが独自のバージョンとどのように競合するのですか?

パッケージのバージョンが独自のバージョンとどのように競合するのですか?

以下をインストールして取得したいと思いますfillup

 rpm -i fillup-1.42-268.1.x86_64.rpm 
    file /usr/bin/fillup conflicts between attempted installs of \
    fillup-1.42-268.1.x86_64 and fillup-1.42-268.1.x86_64

同じパッケージのように見えますが、それ自体がクラッシュします。

なぜこれが起こるのですか?それをインストールするにはどのような手順を踏むべきですかfillup

答え1

以前のインストールが完了する前に中断されたパッケージをインストールしようとすると、この種のエラーメッセージが表示されることがあります。

rpmデフォルトでは、インストールする必要があるファイルがファイルシステムにすでに存在する場合、パッケージはインストールされません。したがって、以前のインストールが中断され、いくつかのファイルが残っている場合、それ以降のすべての試行は失敗します。このエラーメッセージrpmは、問題のファイルがどのパッケージに属しているかを調べるため、非常に混乱しています。この場合、インストールするパッケージとまったく同じです。この--forceオプションは、rpmタスクを実行するために必要なことを気にせずに削除しないように指示します(これが危険な理由ですが、他のパッケージがファイルを宣言しない場合は安全です)。

答え2

私は問題を部分的に解決しました。少なくとも、「この問題に対してできること」部分を実行しました。

rpm -i --force fillup-1.42-268.1.x86_64.rpm 

これで動作しますが、なぜそのエラーメッセージが表示されるのかわかりません。

関連情報