如何在 14.04 中禁用 lightdm 的关机/重启?

如何在 14.04 中禁用 lightdm 的关机/重启?

在 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 开始,这条规则似乎不再有效。对于如何实施限制,有什么建议吗?

答案1

我想我已经找到原因了:操作似乎已更改为“org.freedesktop”。登录1.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 会话,因此您必须添加第二条规则以将其列入白名单(如果需要)。

请注意,此方法仅阻止从 GUI 发出的重启/等命令。要阻止来自命令行的重启/等命令,可以使用 molly-guard - 详见禁用所有用户的关机命令,甚至 root 用户 - 后果是什么?

相关内容