PolicyKit kuralları asla yürürlüğe girmez


12

.rulesPolicyKit için yeni bir dosya yazmaya çalışıyorum . Test denemem (dizinde /etc/polkit-1/rules.d/) şöyle:

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;
});

Ama anlayabildiğim kadarıyla, bu kod asla çalıştırılmaz. testDosyanın hâlâ orada olduğunu ve hiçbir günlük çıkış gibi bir şey çalıştırdıktan sonra orada$ pkexec -u otheruser bash

( .rulesDosyaları yürütülebilir olarak işaretlemeyi denedim .)

Yanıtlar:


15

Eğer biri Ubuntu 19.04 (veya düşürmek) o zaman hala polkit, eski sürümü kullanıyorsanız hiçbir .rules dosyaları ama sadece .pkla ve .conf dosyaları olduğu yerde.

Komut isteminde şunları yapın:

pkaction --version

<0.106 yazıyorsa, yalnızca eski sözdizimini kullanabilirsiniz.

İçinde bir .pkla dosyası oluşturabilirsiniz /etc/polkit-1/localauthority/


1
Ubuntu 15.10 hala eski versiyonda. pkaction --versionverirpkaction version 0.105
Roger Binns

5
Ubuntu 18.04 hala 0.105 taşıyor !!!! Aman!!!!
Osqui

1
Ve Ubuntu için depolarda 0.106+ sürümü bile yok! AMAN TANRIM!
Suncatcher

2
Ubuntu 19.04 pkaction version 0.105. Yeni kural dosyaları desteklenmeyen JavaScript'te yazılmıştır.
Denis Denisov

0

Beklendiği gibi çalışmak için kendi .rulesdosyalarınızı koymanız gerekir :

/usr/share/polkit-1/rules.d

Ayrıca bu soruyu da çözmesi gerektiğini unutmayın .


Dosyayı oraya taşımak hiçbir şeyi değiştirmedi. Ayrıca, polkit belgelerine ve Arch wiki'ye göre , /etc/polkit-1/rules.dkullanıcı yapılandırması için kullanılmalıdır. Yani değişen dizinlerin ne fark yarattığından emin değilim.
Keidax

@Keidax: Dosyanızın adı .rulesnedir?
Sylvain Pineau

Şu Anda/usr/share/polkit-1/rules.d/10-udisks-personal.rules
Keidax
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.