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

10

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é à partir d' 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. Des conseils sur la façon de mettre en œuvre la restriction?

Alex
la source

Réponses:

10

Je pense que j'ai trouvé la cause: l'action semble avoir changé en "org.freedesktop. Login1 .reboot" (et similaire).

L'ajout des lignes suivantes comme /etc/polkit-1/localauthority/50-local.d/restrict-login-powermgmt.pklatravaux:

[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. Ça a l'air moche, mais ça marche;)

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

Notez que cette méthode bloque uniquement les commandes de redémarrage / etc émises depuis l'interface graphique. Pour bloquer les commandes de redémarrage / etc de la ligne de commande, on peut utiliser molly-guard - comme expliqué dans Désactiver la commande d'arrêt pour tous les utilisateurs, même root - conséquences?

Alex
la source
J'apprécie que c'est vieux, mais c'est quand même utile! Question de suivi - un autre message: askubuntu.com/questions/137336/… Parle de simplement supprimer les boutons sur l'écran de pré-connexion. Existe-t-il un moyen de combiner les deux messages pour réactiver le bouton sur l'écran de connexion, mais ne pas l'avoir lorsque les utilisateurs sont connectés (utile pour les systèmes accessibles à distance où pouvoir arrêter à partir de la console serait bien)
Michael Firth
1
Comme autre point de données, je viens de l'utiliser avec succès sur le nouveau Ubuntu 18.04.1 LTS, pour interdire l'arrêt et le redémarrage (mais permettre l'hibernation et la suspension). Notez que je devais utiliser ces noms «login1»; que j'ai également désactivé «halt» et «halt-multiple-sessions»; que je l'ai fait parce que j'ai trouvé ces actions dans /usr/share/polkit-1/actions/org.freedesktop.login1.policy; et enfin, que dans l'interface utilisateur gdm3 d'Ubuntu 18.04, les boutons de la boîte de dialogue de confirmation ne sont pas masqués, mais ils n'ont tout simplement aucun effet.
MarnixKlooster ReinstateMonica