如何控制LightDM的节能设置?


14

我希望lightdm在特定时间段后进入省电模式。如果我已登录,则根据用户设置,我的屏幕将超时,但是如果没有人登录,屏幕将永远保持打开状态。

我看过一些文章,这些文章对如何做提出了一些建议,但是它们似乎都不起作用,或者是由于我对Linux的了解有限。

2014年6月2日更新:所显示的设置sudo -H -u lightdm dbus-launch --exit-with-session gsettings list-recursively org.gnome.settings-daemon.plugins.power如下:

org.gnome.settings-daemon.plugins.power active true
org.gnome.settings-daemon.plugins.power button-hibernate 'hibernate'
org.gnome.settings-daemon.plugins.power button-power 'interactive'
org.gnome.settings-daemon.plugins.power button-sleep 'suspend'
org.gnome.settings-daemon.plugins.power button-suspend 'suspend'
org.gnome.settings-daemon.plugins.power critical-battery-action 'suspend'
org.gnome.settings-daemon.plugins.power idle-brightness 30    
org.gnome.settings-daemon.plugins.power idle-dim true    
org.gnome.settings-daemon.plugins.power lid-close-ac-action 'suspend'
org.gnome.settings-daemon.plugins.power lid-close-battery-action 'suspend' 
org.gnome.settings-daemon.plugins.power lid-close-suspend-with-external-monitor false    
org.gnome.settings-daemon.plugins.power notify-perhaps-recall true    
org.gnome.settings-daemon.plugins.power percentage-action 2    
org.gnome.settings-daemon.plugins.power percentage-critical 3    
org.gnome.settings-daemon.plugins.power percentage-low 10    
org.gnome.settings-daemon.plugins.power priority 0    
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 120    
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend' 
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0    
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'suspend' 
org.gnome.settings-daemon.plugins.power time-action 120    
org.gnome.settings-daemon.plugins.power time-critical 300    
org.gnome.settings-daemon.plugins.power time-low 1200    
org.gnome.settings-daemon.plugins.power use-time-for-policy true

我本来以为那sleep-inactive-ac-timeout 120将是正确的输入,但是除非我实际以用户身份登录,否则它不会超时。


好的-人们将其标记为重复,但是建议的解决方案对我来说根本不起作用。我似乎没有列出相同的设置,并且建议的分辨率中的设置与为lightdm帐户设置的设置直接匹配我的设置,但是当不以用户身份登录时,屏幕仍然不会超时。还有其他想法吗?
Scottie 2014年

2
您可以添加正在使用的Ubuntu版本和发行版/桌面版本。
Mateo 2014年

你看着laptop-mode-tools还是TLP?第一个触发预构建的节能选项并添加一个.conf文件进行管理,第二个是我使用的第三方应用程序,并且运行得很好(.conf文件得到了很好的解释)
MrVaykadji

Answers:


4

这是一个已确认的错误:

而且,错误通常不在这里

无论如何,我发现了以下解决方法(与错误#1245474有关的注释#33)对我有用

[...]我已经添加了一个脚本来处理用户登录时关闭X dpms超时的问题。这是我创建的三个文件。首先,配置文件:

/etc/lightdm/lightdm.conf.d/50-dpms.conf

[SeatDefaults] 
display-setup-script=/etc/lightdm/dpms-enable
session-setup-script=/etc/lightdm/dpms-disable

确保以上内容归root用户所有。最简单的方法是使用sudoedit创建它。

接下来是两个脚本。这些文件必须由root拥有并使其可执行(chmod +x)。

/ etc / lightdm / dpms-enable

#!/bin/sh

(
    # This delay is required. Might be because the X server isn't
    # started yet.
    sleep 10

    # Set up a 5 minute timeout before powering off the display.
    xset dpms 0 0 300 
) &

/ etc / lightdm / dpms-disable

#!/bin/sh

(
    # This delay is required. Might be because the X server isn't
    # started yet.
    sleep 10

    # Turn off X's handling of dpms timeout. Otherwise
    # gnome-settings-daemon and gnome-screensaver will fight over it.
    xset dpms 0 0 0 
) &

鉴于以上所述,我在登录屏幕上关闭了显示器的电源,并且对于用户会话,dpms超时设置为零,因此屏幕保护程序可以正常工作。


不确定在升级到14.04之后为何现在无法正常工作的原因。显然,锁定屏幕现在有所不同,因此我怀疑以上内容不再有效。有想法吗?
Scottie 2014年

这在Ubuntu 16.10(lightdm + openbox)上不起作用。
Xdg

1

我在中创建了一个/etc/lightdm/lightdm.conf.d/名为的文件50-dpms.conf

[SeatDefaults]
display-setup-script=/usr/local/bin/dpms-start

dpms-start文件是一个脚本,可让用户lightdm启用dpms。

#!/bin/sh
sudo xhost +si:localuser:lightdm # creates a user 'lightdm'
sudo su lightdm -s /bin/bash <<HERE # lightdm starts dpms from HERE
/usr/bin/xset +dpms
exit
HERE # and stops at this HERE

确保键入sudo chmod +x /etc/lightdm/lightdm.conf.d/dpms-start以使其可执行。在Ubuntu 14.04中,我将它与Unity和Cinnamon以及Unity-Greeter一起用于锁屏。我不在lightdm中使用Synergy进行多个显示。另一种方法是将root添加到/ etc / group中的lightdm组。这样就无需在dpms-start中创建lightdm用户。


上面的脚本似乎有语法错误,请您解决它吗?
肯恩
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.