如何防止笔记本电脑从睡眠状态唤醒时键盘背光亮起?

如何防止笔记本电脑从睡眠状态唤醒时键盘背光亮起?

我有一台 Thinkpad 470,上面运行的是 Ubuntu 16.04 LTS。我不喜欢在白天打开键盘背光,因为我想节省电池电量。我注意到,即使从屏幕完全变暗或系统因不活动而进入睡眠状态唤醒,背光也会自动打开。问题是,在白天或有强光的情况下,我无法看到背光是否打开,因此我不会将其关闭,这会耗尽电池电量。我希望能够控制此设置。我该怎么做?

在以下位置稍加搜索后:

/sys/class/leds/tpacpi::kbd_backlight

我找到了以下文件:

rgh@arrakis:/sys/class/leds/tpacpi::kbd_backlight$ ls
brightness  brightness_hw_changed  device  max_brightness  
power  subsystem  trigger  uevent

其中,文件触发器里面包含以下项目:

[none] rfkill-any kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock 
kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock 
kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock AC-online 
BAT0-charging-or-full BAT0-charging BAT0-full 
BAT0-charging-blink-full-solid BAT1-charging-or-full 
BAT1-charging BAT1-full BAT1-charging-blink-full-solid usb-gadget 
usb-host disk-activity ide-disk mtd nand-disk cpu cpu0 cpu1 cpu2 cpu3 
panic bluetooth-power rfkill0 rfkill1 phy0rx phy0tx phy0assoc phy0radio 
hci0-power rfkill41

我猜想这里需要删除一些内容才能获得我想要的行为?你能告诉我我是否正确吗?如何完成?

答案1

由此reddit 帖子OP 遇到了相反的问题,从暂停状态恢复时灯总是熄灭。

您可以采用相同的方法,但将1(on) 更改为0(off)。

找到文件夹/etc/systemd/system/sleep.target.wants/并创建kb_backlight_resume.service以下内容:

[Unit]
Description=Switch on keyboard backlight after resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target

[Service]
ExecStart=/bin/echo 0 > "/sys/devices/platform/thinkpad_acpi/leds/tpacpi::kbd_backlight/brightness"

[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target

我没有 Thinkpad,而且我的戴尔背光键盘的目录结构也不同。我无法针对您的环境进行测试。如果上面的目录名称不正确,您可能需要手动调整代码。

测试暂停/恢复之前不要忘记重新启动。


如果您的戴尔电脑没有此功能,/etc/systemd/system/sleep.target.wants/可以启用它。例如,请参见:

答案2

尝试:

sudo apt-get install pm-utils

在中创建脚本/usr/lib/pm-utils/sleep.d

sudo nano /usr/lib/pm-utils/sleep.d/KB_BACK_OFF.sh

复制并粘贴以下内容:

#!/bin/sh

case "$1" in
       resume)
             xset led off
                ;;
esac

exit 0

使脚本可执行:

sudo chmod a+x /usr/lib/pm-utils/sleep.d/KB_BACK_OFF.sh

如果脚本中的命令xset 导致关闭不起作用,尝试用命令替换它xset -led(您的号码)使用 1 至 32 之间的数字。例子: xset -led 3

我亲自尝试在 Kubuntu 18.04 上出于其他目的运行该脚本并且它在系统唤醒时有效。

你不需要重启系统

相关内容