私の仕様ファイルでRPMインストールを実行するとyumインストールが停止するのはなぜですか?

私の仕様ファイルでRPMインストールを実行するとyumインストールが停止するのはなぜですか?

私は通常次のように始めます。最小セントース7そして走る

rpm -i postgres10-libs-10.15-1PGDG.rhel7.x86_64.rpm 

これは非常にうまく機能します。

しかし、私は現在書いています。回転速度 仕様書インストール後、次のように同じ操作を実行してください。

%post
rpm -i postgres10-libs-10.15-1PGDG.rhel7.x86_64.rpm 

しかし、私がするとき

yum install my-rpm-1.0.0.el7.x86_64.rpm

rpm -i 行で停止します。私がこれを知っている理由は、私がするとき

ps -ef

私は見ることができます

 rpm -i postgres10-libs-10.15-1PGDG.rhel7.x86_64.rpm 

決して終わらなかった。

rpm -iが仕様ファイルでは機能しませんが、通常の端末で動作する理由を知っている人はいますか?

答え1

この時点で、RPMデータベースは自分自身を食べようとする可能性が高いです。データベースはすでに開いていますが、閉じる前に再度開こうとします。意図的にRPMの競合条件を作成しましたが、それを処理する方法がわかりません。正しい方法は、Requires:仕様ファイルにパッケージ共存を指定することです。

関連情報