如何防止 Linux 操作系统通过按键从睡眠模式中唤醒?

如何防止 Linux 操作系统通过按键从睡眠模式中唤醒?

我经常将我的 Fedora Linux 计算机切换到睡眠模式。但是,我不希望在按下键盘上的任何按钮(电源按钮除外)时唤醒它。我该怎么做才能实现这种行为?

答案1

您可以检查计算机的固件(我假设是 EFI,可能是 BIOS)设置。某处应该有一些有关电源管理的设置。您可能想要禁用某些“键盘唤醒”或“USB 唤醒”设置。

答案2

正如您所观察到的,按下电源按钮或通过 USB 输入可以从待机状态唤醒。在 Linux 中,可以通过接口禁用 USB 输入唤醒/sys。这是一个简单的 bash 脚本:

#!/bin/bash
for f in /sys/bus/usb/devices/*/power/wakeup; do
        echo disabled > $f;
done

说明:对于每个 USB 设备,路径中链接有一个文件夹/sys/bus/usb/devices。每个文件夹都有一个名为 的子文件夹power,其中包含一个文件wakeup,用于配置是否允许该 USB 设备将系统从待机状态唤醒。运行上面的脚本会将 a 写入disabled每个wakeup文件,从而禁用每个 USB 设备唤醒计算机。

请注意,此脚本必须以 root 身份在每次启动时执行,因为更改不是持久的。此外,当新设备连接到机器时必须应用它。就我个人而言,我的 root 的 crontab 中有这一行

*/5 *   *   *   *    bash /root/disable-usb-wakeup.sh

每 5 分钟运行一次脚本,确保不会通过 USB 输入唤醒。

相关内容