fen*_*iix 23 suspend hibernate thinkpad laptop wakeup
这一切都是在升级到 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
Run Code Online (Sandbox Code Playgroud)
知道如何从那里开始吗?
IGBE 使用的网络驱动程序是 e1000e
小智 12
以下对我有用:
cat /proc/acpi/wakeup
Run Code Online (Sandbox Code Playgroud)
查找任何已启用状态但看起来不属于那里的项目(对我来说,除了 LID0 之外的任何项目)。然后通过说禁用它们,例如:
sudo sh -c "echo XHC0 > /proc/acpi/wakeup"
Run Code Online (Sandbox Code Playgroud)
检查相应条目是否确实已被禁用,将笔记本电脑置于挂起状态并希望一切顺利:)
小智 10
我有内核 13.13 和基于 Intel Z77X 的主板,以下命令对我有用:
sudo sh -c "echo EHC1 > /proc/acpi/wakeup;echo EHC2 > /proc/acpi/wakeup;echo XHC > /proc/acpi/wakeup"
Run Code Online (Sandbox Code Playgroud)
小智 7
遇到完全相同的问题(ThinkPad T530,Ubuntu 14.04,还有 13.10 和 13.04,经过几次挂起后,计算机在挂起后立即恢复)。
从唤醒中禁用 IBGE 根本没有帮助。
正如 Romano 所建议的那样,我尝试删除 e1000e 模块,然后按预期挂起。
所以:
sudo rmmod e1000e
Run Code Online (Sandbox Code Playgroud)
在 suspend 之前解决问题。
有趣的是,在将模块安装回 ( 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
Run Code Online (Sandbox Code Playgroud)
和
sudo gedit /etc/pm/power.d/99_e1000e_probe:
#!/bin/sh
# Modprobe e1000e kernel module after resume
modprobe e1000e
Run Code Online (Sandbox Code Playgroud)
脚本应该是可执行的 ( sudo chmod +x /etc/pm/sleep.d/99_e1000e_remove /etc/pm/power.d/99_e1000e_probe)。
笔记:
| 归档时间: |
|
| 查看次数: |
10242 次 |
| 最近记录: |