未登录特定帐户时防止睡眠/暂停


15

我们有一个运行Ubuntu 18.04的共享办公室桌面,其中多个作业(通过ssh和screen)通常在多个帐户上运行数周。登录帐户后,可通过以下方式停用睡眠/暂停:

  1. 主系统设置中的电源设置
  2. 使用gnome-tweak-tool,将“关闭笔记本计算机盖后挂起”设置为关闭。

只要具有这些电源设置的用户始终直接登录到机器(即,物理上,而不是通过ssh),此方法就可以正常工作。

问题是在没有用户当前登录的直接即当机器在主登录屏幕(如开机时)。未登录特定帐户时,似乎没有设置睡眠/暂停设置的方法。因此,如果机器仍停留在此屏幕上,它将最终进入睡眠状态,从而暂停所有正在运行的作业。

正如我提到的,只要某些用户登录,一切就可以正常进行。但是,这已被视为存在安全风险。因此,我们想找到一个更好的全系统解决方案。

我要提到的是,我们还有另一个运行Ubuntu 16.04的办公桌面,它没有此问题。



2
如果是生产机器或重要设备,则可能要完全禁用挂起。这可以通过Pasi Suominen在他的回答中显示的内容来完成(/etc/systemd/logind.conf尽管不是通过lidswitch设置)。如果您确实坚持要跟踪特定的远程登录,那么我认为可以做到这一点,但是如果没有在后台运行的根级服务,则不可以。全局禁用暂挂是一个更简单的解决方案,并且已经可用,因此,我建议您这样做。
Sergiy Kolodyazhnyy

如果要完全禁用暂停,则可以通过policykit来实现。详见说明书:sites.google.com/site/easytipsforlinux/...
帕西苏敏芬

Answers:


8

当没有用户登录时

当没有用户登录时,电源设置来自psuedo-user ID gdmGDM自动挂起的以下控件来自:ArchLinux GDM

GDM自动暂停(GNOME 3.28)

GDM使用单独的dconf数据库来控制电源管理。通过将用户设置复制到GDM的dconf数据库中,可以使GDM的行为与用户会话相同。

$ IFS=$'\n'; for x in $(sudo -u username gsettings list-recursively org.gnome.settings-daemon.plugins.power); do eval "sudo -u gdm dbus-launch gsettings set $x"; done; unset IFS

username您的用户名在哪里。

或简单地禁用自动挂起(也可以使用电池替换为ac来运行该命令,以在使用电池运行时也将其禁用):

$ sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'

1
这给了我很多“权限被拒绝”的错误消息
Charon ME

这里也有大量错误!
markackerman8-gmail.com

4

编辑档案 /etc/systemd/logind.conf

在那里您可以找到以下行:

#HandleLidSwitch=suspend

更改为:

HandleLidSwitch=ignore

现在您的登录屏幕也将忽略您的盖开关。

有一个很好的Ubuntud手册页logind.conf:

http://manpages.ubuntu.com/manpages/cosmic/man5/logind.conf.5.html

要通过策略工具包(系统范围的设置)禁用挂起,请遵循以下说明:

https://sites.google.com/site/easytipsforlinux/disable-hibernate-and-suspend


0

如果您使用的是UBUNTU 18.04,则可以使用一个名为

咖啡因指标

您可以从软件商店获取并安装它。

激活它,使其可以手动控制桌面的空闲状态

希望对您有帮助。


这不会仅在用户登录时运行吗?
philshem

是的,您当然必须登录
Muntaha Liaqat 19-4-12

咖啡因非常适合“自动挂起” ...启用或禁用,但是Ubuntu ... xorg上的gnome始终不关注它!
markackerman8-gmail.com
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.