CentOSにRPMをインストールすると、次のエラーメッセージが表示されます。
/var/tmp/rpm-tmp.44492: line 578: [: too many arguments
私が経験している問題は、/var/tmp/rpm-tmp.xxxxx
RPMのインストール後にこのファイルが常に削除されることです。問題のある行番号を確認したいと思います。 rpmの問題を簡単にデバッグできるようにインストールするときにこのファイルを保存する最善の方法は何ですか?これまで私は%pre
これをrpm仕様ファイルのセクションに入れてこの問題を処理しました。
cp -vf /var/tmp/rpm-tmp* /tmp/%module_name-rpm-tmp-copy
/var/tmp/rpm-tmp*
にコピーすることで/tmp
578行を見ることができ、コードの構文エラーを簡単に修正できました。rpm-tmp
インストール中にRPMが使用するファイルを参照する方法はありますか?包括的な(コピーされたファイル)宣言の代わりにenv
正しいコンテンツをコピーするために仕様ファイルでこれらのいくつかを使用できますか?rpm-tmp
cp
/var/tmp/rpm-tmp*
ベストアンサー1
今日、SLES 11SP4(RPMバージョン4.4.2.3)でもこの問題が発生しました。タグ--noclean
書き換え%clean
提案ソリューションもスクリプトの削除を妨げませんでした/var/tmp/rpm-tmp.*
。
exit -1
デバッグ中の手順の最後にきれいな追加項目を追加することで、この問題を解決できました。 rpmbuilder は次のように終了します。
error: Bad exit status from /var/tmp/rpm-tmp.00000 (%install)
そして、ファイルをまだデバッグする必要があります。