Como desativar o desligamento / reinicialização do lightdm na versão 14.04?

10

Na versão 12.04, era possível impedir o desligamento ou a reinicialização do sistema a partir da tela de login adicionando as seguintes restrições /etc/polkit-1/localauthority/50-local.d(adaptadas a partir daqui ):

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

Com o 14.04, essa regra parece não ter mais efeito. Algum conselho sobre como implementar a restrição?

Alex
fonte

Respostas:

10

Acho que encontrei a causa: a ação parece ter mudado para "org.freedesktop. Login1 .reboot" (e similares).

Adicionando as seguintes linhas como /etc/polkit-1/localauthority/50-local.d/restrict-login-powermgmt.pklafunciona:

[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

Você ainda vê uma caixa de diálogo de confirmação, mas não há botões para confirmar. Parece feio, mas funciona;)

Infelizmente, isso se aplica a todos os usuários, não apenas à sessão lightdm, portanto, você deve adicionar uma segunda regra para listá-los, se desejar.

Observe que este método bloqueia apenas os comandos reboot / etc emitidos pela GUI. Para bloquear os comandos reboot / etc na linha de comando, pode-se usar o molly-guard - como explicado em Desativando o comando shutdown para todos os usuários, mesmo que raiz - consequências?

Alex
fonte
Eu aprecio que isso seja antigo, mas ainda é útil! Pergunta de acompanhamento - outro post: askubuntu.com/questions/137336/… Fala sobre apenas remover os botões na tela de pré-login. Existe uma maneira de combinar as duas postagens para reativar o botão na tela de login, mas não quando o usuário está logado (útil para sistemas de acesso remoto onde seria bom desligar o console)
Michael Firth
11
Como outro ponto de dados, eu apenas usei isso com sucesso no novo Ubuntu 18.04.1 LTS, para impedir o desligamento e a reinicialização (mas permitir a hibernação e a suspensão). Observe que eu precisava usar esses nomes de 'login1'; que eu também desabilitei 'halt' e 'halt-multiple-sessions'; que fiz isso porque encontrei essas ações em /usr/share/polkit-1/actions/org.freedesktop.login1.policy; e, finalmente, que na interface do usuário gdm3 do Ubuntu 18.04, os botões na caixa de diálogo de confirmação não estão ocultos, mas simplesmente não têm efeito.
MarnixKlooster ReinstateMonica