PolicyKit用の新しい.rules
ファイルを作成しようとしています。私のテスト試行(ディレクトリ/etc/polkit-1/rules.d/
)は次のようになります。
polkit.addRule(function(action, subject) {
polkit.spawn(["rm","/home/gabriel/test"]);
if (action.id == "org.freedesktop.policykit.exec") {
polkit.log("action=" + action);
polkit.log("subject=" + subject);
}
return polkit.Result.NOT_HANDLED;
});
しかし、私が知る限り、このコードは決して実行されません。 test
ファイルはまだ存在し、$ pkexec -u otheruser bash
などの実行後にログ出力はありません
(.rules
ファイルを実行可能としてマークしようとしました。)
buntu 19.04(またはそれ以前) を使用している場合は、.rulesファイルはなく、.pklaファイルと.confファイルのみが存在する古いバージョンのPolKitを引き続き使用しています。
コマンドプロンプトで、次の操作を行います。
pkaction --version
<0.106と表示されている場合は、古い構文のみを使用できます。
/etc/polkit-1/localauthority/
に.pklaファイルを作成できます
期待どおりに動作するには、独自の.rules
ファイルを次の場所に配置する必要があります。
/usr/share/polkit-1/rules.d
これも解決する必要があることに注意してください question 。