Как отключить выключение / перезагрузку из lightdm в 14.04?

10

В 12.04 было возможно предотвратить выключение системы или перезагрузку с экрана входа в систему, добавив следующие ограничения в /etc/polkit-1/localauthority/50-local.d(адаптировано здесь ):

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

С 14.04 это правило, похоже, больше не действует. Любой совет, как реализовать ограничение?

Alex
источник

Ответы:

10

Я думаю, что нашел причину: действие, похоже, изменилось на «org.freedesktop. Login1 .reboot» (и тому подобное).

Добавляем следующие строки как /etc/polkit-1/localauthority/50-local.d/restrict-login-powermgmt.pklaработает:

[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

Вы по-прежнему видите диалоговое окно подтверждения, но нет кнопок для подтверждения. Выглядит некрасиво, но работает;)

К сожалению, это относится ко всем пользователям, а не только к сеансу lightdm, поэтому вы должны добавить второе правило в белый список при желании.

Обратите внимание, что этот метод блокирует только команды перезагрузки / etc, выполненные из GUI. Чтобы заблокировать команды перезагрузки / etc из командной строки, можно использовать molly-guard - как описано в разделе Отключение команды выключения для всех пользователей, даже root - последствия?

Alex
источник
Я ценю это старое, но это все еще полезно! Дополнительный вопрос - еще один пост: askubuntu.com/questions/137336/… Рассказывает только об удалении кнопок на экране предварительной регистрации. Есть ли способ объединить два сообщения, чтобы снова включить кнопку на экране входа в систему, но не иметь ее, когда пользователи вошли в систему (полезно для систем с удаленным доступом, где было бы возможно отключение с консоли)
Майкл Ферт
1
В качестве еще одного пункта данных, я просто успешно использовал это на новом Ubuntu 18.04.1 LTS, чтобы запретить выключение и перезагрузку (но разрешить спящий режим и приостановку). Обратите внимание, что мне нужно было использовать эти имена 'login1'; что я также отключил 'halt' и 'halt-множественные сессии'; что я сделал это, потому что нашел эти действия в /usr/share/polkit-1/actions/org.freedesktop.login1.policy; и наконец, в пользовательском интерфейсе gdm3 в Ubuntu 18.04 кнопки в диалоговом окне подтверждения не скрыты, а просто не действуют.
MarnixKlooster ReinstateMonica