web-dev-qa-db-fra.com

Comment désactiver l'arrêt / le redémarrage de lightdm dans 14.04?

En 12.04, il était possible d'empêcher l'arrêt ou le redémarrage du système à partir de l'écran de connexion en ajoutant les restrictions suivantes dans /etc/polkit-1/localauthority/50-local.d (adapté de ici ):

[Disable lightdm PowerMgmt]
Identity=unix-user:lightdm
Action=org.freedesktop.consolekit.system.restart;org.freedesktop.consolekit.system.stop
ResultAny=no
ResultInactive=no
ResultActive=no

Avec 14.04, cette règle ne semble plus avoir d'effet. Un conseil pour mettre en œuvre la restriction?

9
Alex

Je pense avoir trouvé la cause: l'action semble avoir changé pour "org.freedesktop. login1 . Reboot" (et le-comme).

Ajouter les lignes suivantes en tant que /etc/polkit-1/localauthority/50-local.d/restrict-login-powermgmt.pkla fonctionne:

[Disable lightdm PowerMgmt]
Identity=unix-user:*
Action=org.freedesktop.login1.reboot;org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions;org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no

Vous voyez toujours une boîte de dialogue de confirmation mais il n'y a pas de boutons pour confirmer. C'est moche, mais ça marche;)

Malheureusement, cela s'applique à tous les utilisateurs, pas seulement à la session lightdm, vous devez donc ajouter une seconde règle à leur liste blanche si vous le souhaitez.

Notez que cette méthode bloque uniquement les commandes/etc émises à partir de l'interface graphique. Pour bloquer les commandes de redémarrage/etc à partir de la ligne de commande, vous pouvez utiliser molly-guard - comme expliqué dans la section Désactivation de la commande d'arrêt pour tous les utilisateurs, même racine - conséquences?

8
Alex