多年来,这个程序对我来说一直非常有效:
- 合上盖子即可进入睡眠/挂起状态。
- 移除笔记本电脑
- 盖上盖子
- Redock 笔记本电脑
- 打开盖子唤醒/取消暂停/恢复/解冻
但是,在最近的更新之后(我使用的是 Debian buster,从 stretch 开始),上面的步骤#5 导致笔记本电脑重新启动而不是唤醒。
我无法诊断问题。 /var/log/syslog 的结尾始终是:
Aug 28 18:20:40 robert-linlap NetworkManager[771]: <info> [1567041640.6606] manager: NetworkManager state is now ASLEEP
Aug 28 18:20:40 robert-linlap systemd[1]: Reached target Sleep.
Aug 28 18:20:40 robert-linlap systemd[1]: Starting Suspend...
Aug 28 18:20:40 robert-linlap systemd-sleep[19425]: Suspending system...
即,没有迹象表明为什么重新启动而不是唤醒。
我不知道如何诊断正在发生的事情或如何解决它:这是我提出这个问题的主要动机。
有一个解决方法:
- 将盖子打开。
- 移除笔记本电脑
- 合上盖子进入睡眠/暂停状态
- 打开盖子即可触发唤醒/取消暂停
- 连接笔记本电脑
- 切勿关闭盖子 :-)
这个解决方法的缺点是我必须重新设置我的外接显示器配置;虽然没什么大不了的,但很烦人。
无论如何,我的目标是弄清楚如何诊断问题,以便我可以修复它,希望通过查看魔术日志文件或打开一些诊断程序。
答案1
实际上,暂停似乎只是随机起作用。上述解决方法顺序并不总是有效。
令人惊讶的是,我发现 s2ram 和 s2both 都可以工作。出于某种奇怪的原因,pm 暂停和pm-暂停-混合失败了,但是s2ram和s2both工作了。
我查看了文件/usr/lib/pm-utils/sleep.d/
,并dpkg -S
确定了它们在哪个 Debian 软件包中,然后升级了所有需要升级的软件包。最终升级了:
dbus
systemd
libc-bin
libdbus-1-3
anacron
man-db
hdparm
powermgmt-base
initramfs-tools
uswsusp
acpi-support
pm-utils
不知道他们中哪一个人做的,但效果更好。
但是,我还是有点偏执,所以我将 systemd 的暂停设置为始终通过 suspend_hybrid挂起或休眠请求时的混合睡眠和如何默认使用 pm-suspend-hybrid 而不是 pm-suspend?。
到目前为止看起来一切进展顺利。
更新
使用 的最新更新intel-microcode
,当电源(交流适配器)随时被移除时,会导致挂起/待机/睡眠失败。这似乎是另一个问题。