【问题标题】:ACPI event not triggering associated actionACPI 事件未触发相关操作
【发布时间】:2017-09-12 06:30:23
【问题描述】:

我一直在尝试启用计算机的 Fn+F9/F10 亮度控制。阅读this thread,我尝试设置一个 acpi 事件/动作脚本来手动更改我的亮度。脚本本身可以工作 - 我可以在终端中手动调用 bl_down.shbl_up.sh

但是,由于某种原因,acpi 事件本身并未触发脚本。我在下面包含了acpi_listen 的输出以及脚本:

~$ acpi_listen 
video/brightnessdown BRTDN 00000087 00000000 # FN+F9
video/brightnessup BRTUP 00000086 00000000   # FN+F10

bl_down.sh

#!/bin/sh

bl_device=/sys/class/backlight/intel_backlight/brightness
echo $(($(cat $bl_device)-100)) | sudo tee $bl_device

bl_up.sh

#!/bin/sh

bl_device=/sys/class/backlight/intel_backlight/brightness
echo $(($(cat $bl_device)+100)) | sudo tee $bl_device

所以我知道 acpi 已启用,并且脚本可以正常工作。只是事件本身由于某种原因没有触发动作。任何正确方向的指针表示赞赏!

编辑:我忘了包括实际的 acpi 事件:

bl_down

event=video/brightnessdown BRTDN 00000087 00000000
action=/etc/acpi/actions/bl_down.sh

bl_up

event=video/brightnessup BRTUP 00000086 00000000
action=/etc/acpi/actions/bl_up.sh

【问题讨论】:

    标签: linux brightness acpi


    【解决方案1】:

    Welp,想通了。阅读该站点上的其他帖子,我意识到我需要重新启动 acpid。尝试sudo /etc/init.d/acpid reload 后,一切正常。

    【讨论】:

      【解决方案2】:

      您可以改用 xbacklight。它通过使用 X11 的 RandR 扩展来管理您的亮度。然后,您可以将热键绑定到:

      xbacklight -inc 100

      xbacklight -dec 100

      您可以将“100”替换为适合您的任何增量。就我个人而言,我发现这对我来说是最简单的解决方案。

      【讨论】:

      • 不幸的是,xbacklight 对我不起作用——我不太清楚为什么。在线阅读,似乎 Ubuntu 16.04+ 与 xbacklight 存在问题。这就是我使用 acpi 调用的原因。
      最近更新 更多