问题描述
升级到13.10后,这一切开始发生,现在我正在运行14.04,仍然有相同的问题。
当我合上盖子或执行sudo pm-suspend
时,笔记本电脑将进入暂停状态2-5秒并自行唤醒。
如果我尝试休眠,也会发生同样的情况。
我有种直觉,感觉某种东西正在唤醒/将CPU退出暂停模式,但是我无法弄清楚是什么。
对解决此烦人的问题有帮助吗?
编辑:
多亏@Fabian,我才能够弄清楚以太网卡的行为是否正常,甚至在我将该卡设置为不唤醒局域网后(执行acpitool -W 3
或echo disabled > /sys/bus/pci/devices/0000:00:19.0/power/wakeup
或echo IGBE > /proc/acpi/wakeup
时,笔记本电脑仍在唤醒并显示此信息当我做acpitool -w
Device S-state Status Sysfs node
---------------------------------------
1. LID S3 *enabled
2. SLPB S3 *disabled
3. IGBE S4 *enabled pci:0000:00:19.0
4. EXP1 S4 *disabled pci:0000:00:1c.0
5. EXP2 S4 *disabled pci:0000:00:1c.1
6. EXP3 S4 *disabled
7. EXP4 S4 *disabled
8. EXP5 S4 *disabled pci:0000:00:1c.4
9. EHC1 S3 *disabled pci:0000:00:1d.0
10. EHC2 S3 *disabled pci:0000:00:1a.0
11. HDEF S4 *disabled pci:0000:00:1b.0
知道如何从那里继续吗?
IGBE使用的网络驱动程序是e1000e
最佳回答
我有基于内核13.13和基于Intel Z77X的主板,以下命令对我有用:
sudo sh -c "echo EHC1 > /proc/acpi/wakeup;echo EHC2 > /proc/acpi/wakeup;echo XHC > /proc/acpi/wakeup"
次佳回答
以下为我工作:
cat /proc/acpi/wakeup
查找任何启用了状态的项目,看起来好像它们不属于那里(对我来说,除了LID0以外的任何东西)。然后通过说禁用它们,例如:
sudo sh -c "echo XHC0 > /proc/acpi/wakeup"
检查是否确实禁用了相应的条目,将笔记本电脑置于暂停状态,并希望最好:)
第三种回答
遇到完全相同的问题(ThinkPad T530,Ubuntu 14.04,以及13.10和13.04,在几次挂起后,计算机在挂起后立即恢复)。
从唤醒中禁用IBGE根本没有帮助。
正如罗曼诺(Romano)所建议的那样,我尝试删除e1000e模块,按预期将其挂起。
所以:
sudo rmmod e1000e
暂停之前可以解决此问题。
有趣的是,在重新安装模块(sudo modprobe e1000e
)并挂起而未移除模块后,该问题立即再次出现。因此,它一定与硬件有关。
为了使其自动化,我创建了两个简单的挂起/唤醒脚本(在上述硬件Ubuntu Trusty 14.04上进行了测试):sudo gedit /etc/pm/sleep.d/99_e1000e_remove
:
#!/bin/sh
# Remove e1000e kernel module prior to suspend
rmmod e1000e
和sudo gedit /etc/pm/power.d/99_e1000e_probe
:
#!/bin/sh
# Modprobe e1000e kernel module after resume
modprobe e1000e
脚本应该是可执行的(sudo chmod +x /etc/pm/sleep.d/99_e1000e_remove /etc/pm/power.d/99_e1000e_probe
)。
笔记:
-
我认为即使这些脚本不能解决您的问题,也可以安全使用。
-
我没有使用LAN唤醒,所以我不知道它在修复中的表现。