Snažím se napsat nová pravidla .rules
soubor pro PolicyKit. Můj testovací pokus (v adresáři /etc/polkit-1/rules.d/
) vypadá takto:
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;
});
Ale pokud mohu říci, tento kód se nikdy nespustí. test
soubor je tam stále a po spuštění něčeho jako $ pkexec -u otheruser bash
není žádný výstup protokolu
(Zkoušel jsem označit .rules
soubory jako spustitelné.)
Přijatá odpověď:
Pokud používáte Ubuntu 19.04 (nebo nižší), pak stále používáte starou verzi PolKit, kde nejsou žádné soubory .rules, ale pouze soubory .pkla a .conf.
Na příkazovém řádku proveďte:
pkaction --version
Pokud je tam uvedeno <0,106, můžete použít pouze starou syntaxi.
Soubor .pkla můžete vytvořit v /etc/polkit-1/localauthority/