我有两个安装了 Ubuntu 18.04.1 的系统。两者具有相似的硬件和软件配置,但其中一个暂停到 SBTN 新闻事件,而另一个什么也不做。我检查了 gsettings 并且两者都有相似的 org.gnome.settings-daemon.plugins.power 配置。我想知道与 SBTN 键事件相关的完整键绑定。
我如何以及在哪里可以检查这些?
另外,如何将键盘按键事件(比如暂停/中断按钮的键码 127)重新映射到 SBTN 按钮/PWBN 按钮?
如何将系统挂起操作映射到键盘暂停/中断按钮?
PS:我正在使用 acpi_listen 收听 PWBN 和 SBTN 按键事件,并且我能够看到按键。为了检查键盘事件,我正在使用 xinput 测试。此外,我需要在暂停操作后使用相同的按键使系统恢复正常。
首先,检查您是否在另一台机器上运行了 acpi 服务,使用
sudo systemctl status acpid
或sudo service acpid status
如果这样做,请
systemctl suspend
在对按下睡眠/暂停按钮没有响应的另一台机器上进行测试,看看是否打印了任何错误或警告。至于将自定义键绑定设置为暂停/中断键,我会尝试将其绑定到执行
systemctl suspend
命令的脚本,因为尝试重新映射睡眠/暂停按钮将需要清除内置睡眠/暂停键的先前绑定,如果有一个,如果我没记错的话。换句话说,制作一个脚本suspendme.sh
。在suspendme.sh 脚本中:
#!/bin/bash systemctl suspend
然后您可以在 Gnome 和 Unity 中使用“系统设置”>“键盘”>“快捷方式”>“自定义快捷方式”来设置快捷方式。只需单击 + 并使用 Pause 键执行命令,
suspendme.sh
因为它位于 /usr/local/bin 中,并将成为路径的一部分。上述方法的问题是创建的键盘快捷键适用于会话中的用户。我希望按钮分配在所有用户中都是持久的,并且不希望输入任何密码来执行挂起。
扩展@BarBar1234 的方法并解决电源按钮事件而不是睡眠按钮事件,以下工作很好,尽管不是发布问题的确切解决方案。