锁定屏幕/显示开启后键盘背光打开
我刚刚升级了Ubuntu(15.04到15.10),现在我遇到了一个奇怪的行为:每当我锁定屏幕时(使用任意Ctrl + Alt + L,Win + L或只是点击任务栏中的“锁定”)菜单),键盘背光打开,即使我总是关闭它。
我不知道从哪里开始调查这个。 它在Ubuntu 15.04中没有发生过,似乎没有其他人遇到过这种情况。
我的笔记本电脑是戴尔Inspiron,如果有帮助的话。
更新:我后来才明白,每当显示器打开时就会出现此问题,这是因为我因为错误而锁定屏幕后发生的。 所以,这些是相关事件,但实际原因是屏幕开启。
因此,网络真是一件令人惊奇的事情! 经过大量的研究和潜入许多论坛链接后,我设法更好地理解了这个问题,找出了什么程序对它负责,最后,为了好的方法禁用了这个行为。 我以为我会写下我的步骤,以防其他人遇到同样的问题。
步骤1.监视系统以了解键盘背光是否/何时打开
首先要知道可以通过读取文件/sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/brightness
来检查键盘背光的当前状态。 因此,我们希望收到有关此文件的任何更改的通知,并且最好是通知哪个进程调用了此更改。
这可以使用fanotify来完成。 我使用了手册页中提供的示例程序并添加了一些修改*,以便我可以监视亮度文件的更改。 事实certificate,负责修改的进程是/usr/lib/upower/upowerd
,这是/usr/lib/upower/upowerd
的守护进程。
步骤2.找出UPower打开背光的原因(失败)
这是调查中最模糊的部分,我仍然不知道为什么会发生这种情况。 我发现一个人有一个非常相似的问题但没有解决方案,所以当我找到这个链接时,我开始看看我是否可以完全禁用UPower(以及后果会是什么)。 原来UPower有一个配置文件! 那更好。
步骤3.停止UPower打开键盘背光
最后,我编辑了前面提到的配置文件,位于/etc/dbus-1/system.d/org.freedesktop.UPower.conf
,并在下一行/etc/dbus-1/system.d/org.freedesktop.UPower.conf
更改为
:
然后我用sudo service dbus restart
重新启动了dbus(在Ubuntu 16.04及更高版本上使用systemctl restart dbus.service
)并继续锁定我的屏幕以测试结果并且…它工作了! 好吧,sorta。 登录屏幕不会显示,因此我无法重新登录并不得不强行重启。 但是一切都很好!
就是这样! 我仍然很好奇这是怎么回事。 如果你知道,请发表评论!
*例如,示例程序仅设置为监视FAN_OPEN_PERM
和FAN_CLOSE_WRITE
事件,但在此它是一个FAN_MODIFY
事件。