ファイルにSystemDデバイスファイルに対する適切な権限/所有権があることを確認するにはどうすればよいですか?

ファイルにSystemDデバイスファイルに対する適切な権限/所有権があることを確認するにはどうすればよいですか?

基本的にタイトル。どのような方法がありますか?または、とにかく奇妙な方法で。私が知っている限り、「ConditionPermissions =」、「ConditionOwnership =」などはありません。

答え1

systemdサービスを開始する前に特定のファイル権限または所有権を確認するには、この例に示すように、systemdユニットファイルでスクリプトを実行できます。ここでは、ファイルに644とは異なる権限があることを確認してください。

[Service]
ExecStartPre=/bin/bash -xc 'stat -c %a "myfile" != '644' && exit 1 || exit 0'

ExecStartPre がエラーを返すと、残りの起動プロセスが中断されます。

一般に、このアプローチは安全ではないと見なされ、最善のアプローチは特定の条件で権限を確認するのではなく、権限を設定して正しいことを確認することです。

関連情報