当前位置: 首页>>技术教程>>正文


如何防止暂停和/或休眠状态立即唤醒?

,

问题描述

几天来,我的Ubuntu 12.04台式计算机在进入挂起模式后立即神秘地醒来。

自安装以来,我的Ubuntu 12.10便携式计算机在挂起和休眠后也已立即恢复。

如何预防?

最佳回答

此问题可能是由奇怪的USB信号引起的。 gedit /proc/acpi/wakeup告诉我,已为USB0和USB2启用唤醒。

sudo -s
echo USB0 > /proc/acpi/wakeup
echo USB2 > /proc/acpi/wakeup

将它们设置为禁用(再次由gedit /proc/acpi/wakeup进行检查或刷新file-view),然后,计算机将保持应有的状态处于挂起状态。 🙂

次佳回答

我最近在Ubuntu 15.04上的Asus Zenbook Pro UX501上出现了相同的症状。 Bazon的确切解决方法不起作用,但Vladimir Rutsky的变体成功了。特别:

如果从终端cat /proc/acpi/wakeup运行,则显示以下行

EHC1      S3    *enabled  pci:0000:00:xx.x
EHC2      S3    *enabled  pci:0000:00:xx.x
XHC       S3    *enabled  pci:0000:00:xx.x

(pci地址可能不同)

然后通过发出以下命令将这三个切换为禁用:

sudo -s
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHC > /proc/acpi/wakeup

第三种回答

如果您知道哪个设备可以唤醒您的PC,请按照第一步进行操作。如果不这样做,请打开终端并执行以下操作:

cat /var/log/syslog

并找到哪个设备正在唤醒您的PC。

所以现在:

  1. 在终端点击

    grep . /sys/bus/usb/devices/*/power/wakeup
    

列出所有唤醒计算机的USB端口。

sudo su

我们现在拥有根特权。

2.我有8个USB端口,在这个例子中,我想禁用usb8,所以:

echo disabled > /sys/bus/usb/devices/usb8/power/wakeup

继续进行测试。现在,USB端口8中的特定设备不会唤醒PC。

下一步,在每次启动后使更改永久生效:

3。

sudo nano /etc/rc.local

然后将步骤2中的命令粘贴到那里。(当然,在出口0之前)。

而已。

可选仅在睡眠/唤醒过程之后,在本例中,USB 8设备恢复为启用状态。

  1. 还要编写一个udev规则,以便在每次引导,睡眠,唤醒后执行该命令。

打开终端并执行以下操作:

lsusb

在您的键盘设备ID信息中,前4位是供应商ID,后4位是产品ID

下一步:

sudo nano /etc/udev/rules.d/10-wakeup.rules

在”wakeup”中输入所需的脚本名称。如果您有许多其他udev规则,则数字10是优先级,’rule’将在其他规则之前执行的数字越小。

复制此代码并将其替换为您自己的无线键盘供应商ID和产品ID。

ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="062a", ATTRS{idProduct}=="4101" RUN+="/bin/sh -c 'echo disabled > /sys/bus/usb/devices/usb8/power/wakeup'"

*对我来说,usb8是我的无线键盘(您也可以在屏幕快照(Bus 008)中看到它),将其替换为您自己的键盘。

Ctrl + O保存,Ctrl + X退出并重新启动。

第四种回答

使修复永久化

(我正在编译Bazon,Ilikerobots和Pavlos Theodorou提供的解决方案-它们一起解决了我的特定问题)

要永久解决此问题,无论是唤醒系统的USB端口还是其他原因:

  1. 找出允许唤醒系统的条件:

gedit /proc/acpi/wakeup

您可能会得到以下或类似的内容:

EHC1 S3 *enabled pci:0000:00:xx.x

EHC2 S3 *enabled pci:0000:00:xx.x

XHC S3 *enabled pci:0000:00:xx.x

然后打开:

sudo gedit /etc/rc.local

并在exit 0之前添加这些行(或类似的行,取决于上面的结果)

echo EHC1 > /proc/acpi/wakeup

echo EHC2 > /proc/acpi/wakeup

echo XHC > /proc/acpi/wakeup

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8699.html,未经允许,请勿转载。