rpmlint出力:
E: use-tmp-in-%postun
スペックファイル:
%postun
rm -r /var/aci /tmp/aci_tmp 2> /dev/null
また、パッケージを削除できません
このパッケージをアンインストールした後またはアンインストールする前に、/ tmp内のディレクトリを削除するにはどうすればよいですか?
可能であれば、常に%post
および%postun
スクリプトを避けるようにしてください。あなたはそれらをaciファイルまたはフォルダをあなたのパッケージに属するようにすることができます。
例として、/var/aci
がフォルダーで、/tmp/aci_tmp
がファイルであると仮定します。次に、次のことができます。
%install
mkdir -p $PPM_BUILD_ROOT/var/aci
%files
/var/aci
%ghost /var/aci/* # not sure this is necessary...
%ghost /tmp/aci_tmp
%ghost
ディレクティブの意味:このファイル/フォルダーが表示された場合、それは私のものです。これは、パッケージを削除すると削除されることも意味します。
なぜなら /tmp
は通常、tmpfsとしてマウントされます。パッケージに何かが入っていると、再起動時に消去されます。
エラーを無視するので、おそらく問題はありません。
Tmpfiles.d(5)を使用することをお勧めします。つまり、ファイルを作成します/etc/tmpfiles.d/aci.conf
これらの行のいくつかで(ファイルまたはディレクトリを作成しているかどうかはわかりません):
#Type Path Mode User Group Age Argument
f /file/to/create mode user group - content
F /file/to/create-or-truncate mode user group - content
w /file/to/write-to - - - - content
d /directory/to/create-and-cleanup mode user group cleanup-age -
D /directory/to/create-and-remove mode user group cleanup-age -