如何控制 LightDM 省电偏好?

Sco*_*tie 14 power-management lightdm

我希望 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
Run Code Online (Sandbox Code Playgroud)

我会假设这sleep-inactive-ac-timeout 120是正确的条目,但除非我实际以用户身份登录,否则它不会超时。

Rad*_*anu 5

这是一个已确认的错误:

一般来说,错误在这里是偏离主题的

无论如何,我发现以下解决方法(与错误#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
Run Code Online (Sandbox Code Playgroud)

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

接下来是两个脚本。这些需要由 root 拥有并可执行 ( chmod +x)。

/etc/lightdm/dpms-启用

#!/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 
) &
Run Code Online (Sandbox Code Playgroud)

/etc/lightdm/dpms-禁用

#!/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 
) &
Run Code Online (Sandbox Code Playgroud)

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