如何在 14.04 中禁用挂起功能?

如何在 14.04 中禁用挂起功能?

由于某些原因,Ubuntu 一直没有很好地支持挂起。/etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla在 12.04 中,在主菜单中使用以下禁用挂起选项创建文件。但是,从 12.04 升级到 14.04 后,同样的方法不起作用。

[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no

如何在 14.04 中禁用挂起功能?

答案1

创建一个名为的新文件,/etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla其内容如下:

[Disable suspend (upower)]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
ResultInactive=no
ResultAny=no

[Disable suspend (logind)]
Identity=unix-user:*
Action=org.freedesktop.login1.suspend
ResultActive=no
ResultInactive=no
ResultAny=no

[Disable suspend when others are logged in (logind)]
Identity=unix-user:*
Action=org.freedesktop.login1.suspend-multiple-sessions
ResultActive=no
ResultInactive=no
ResultAny=no

然后重新启动。

这告诉 PolicyKit 在询问是否可以暂停时自动回答“否”。注销菜单将对此作出反应,自动删除“暂停”菜单选项。

我不太明白为什么,但是upowerKDE 需要该设置,但不影响 Unity。login1Unity 需要该设置,但不影响 KDE。

答案2

对我来说,重要的是只是禁用“自动暂停”
因为我仍然希望能够做到“手动暂停”
/etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla

因此,我使用了:

[Disable suspend (upower)]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
ResultInactive=no
ResultAny=no

[Disable suspend (logind)]
Identity=unix-user:*
Action=org.freedesktop.login1.suspend
ResultActive=yes
ResultInactive=no
ResultAny=yes

[Disable suspend when others are logged in (logind)]
Identity=unix-user:*
Action=org.freedesktop.login1.suspend-multiple-sessions
ResultActive=yes
ResultInactive=no
ResultAny=yes

现在我可以在注销菜单中单击“暂停”。但是除非我将其发送至“暂停”,否则 PC 将继续运行。

答案3

你不能。这是 14.04 版 polkit 中的一个错误。作为解决方法,你可以

chmod 000 /usr/lib/pm-utils/bin/pm-action

如果您对上述启动板错误投赞成票,这将会有所帮助。

相关内容