linux pm-suspend后电脑立即唤醒,如何判断是什么原因造成的?

ohfgkhjo  于 2023-01-01  发布在  Linux
关注(0)|答案(1)|浏览(209)

我正在运行一个Debian-Jessy服务器,它在几个小时的网络不活动后进入S3睡眠模式(我做了一个小的bash脚本,每两个小时用crontab检查一次)。挂起几秒钟后,它再次醒来。几个小时后,当我的脚本再次触发pm-suspend,因为网络不活动,它挂起,并没有再次醒来。唤醒它的唯一方法应该是WOL(wake-on-lan)。
"我能做什么"

http:// ubuntuforums.org/showthread.php?t=2233674
https:// bugzilla.kernel.org/show_bug.cgi?id=46421
下面是我的脚本的示例日志:

---------------------------------------
Sun Nov 23 02:00:01 CET 2014
No activity; Suspending now!
#######################################
Sun Nov 23 02:00:02 CET 2014
pm-suspend
#######################################
Sun Nov 23 02:00:15 CET 2014
pm-resume
---------------------------------------
Sun Nov 23 06:00:01 CET 2014
No activity; Suspending now!
#######################################
Sun Nov 23 06:00:01 CET 2014
pm-suspend
#######################################
Sun Nov 23 16:32:14 CET 2014
pm-resume

正如您所看到的,它立即再次唤醒。但第二次,它成功地挂起。
我禁用了proc/acpi/wakeup中的所有设备:

Device  S-state   Status   Sysfs node
CIR   S3    *disabled
PS2K      S4    *disabled
PS2M      S4    *disabled
UR11      S4    *disabled  pnp:00:07
UR12      S4    *disabled  pnp:00:08
USB1      S3    *disabled
RP01      S4    *disabled  pci:0000:00:1c.0
BR11      S4    *disabled
RP02      S4    *disabled
RP03      S4    *disabled  pci:0000:00:1c.2
RP04      S4    *disabled  pci:0000:00:1c.3
RP05      S4    *disabled
RP06      S4    *disabled
RP07      S4    *disabled
RP08      S4    *disabled  pci:0000:00:1c.7
GLAN      S4    *disabled
EHC1      S4    *disabled  pci:0000:00:1d.0
EHC2      S4    *disabled  pci:0000:00:1a.0
XHC   S4    *disabled  pci:0000:00:14.0
HDEF      S4    *disabled
PEG0      S4    *disabled
PEGP      S4    *disabled
PEG1      S4    *disabled
PEG2      S4    *disabled

有没有办法确定唤醒的原因?为什么服务器第二次挂起成功?
我在pm-suspend日志中启用了调试模式,并查看了syslog,但没有找到任何有趣的信息。
系统日志:http://pastebin.com/U963DccX
带有调试的pm-suspend.log:

Sun Nov 23 02:00:02 CET 2014: performing suspend
+ sync
+ do_suspend
+ echo -n mem
+ date
+ log Sun Nov 23 02:00:15 CET 2014: Awake.
+ is_set true
+ return 0
+ local fmt=%s\n
+ [ Sun Nov 23 02:00:15 CET 2014: Awake. = -n ]
+ printf %s\n Sun Nov 23 02:00:15 CET 2014: Awake.
Sun Nov 23 02:00:15 CET 2014: Awake.
+ date
+ log Sun Nov 23 02:00:15 CET 2014: Running hooks for resume
+ is_set true
+ return 0
+ local fmt=%s\n
+ [ Sun Nov 23 02:00:15 CET 2014: Running hooks for resume = -n ]
+ printf %s\n Sun Nov 23 02:00:15 CET 2014: Running hooks for resume
Sun Nov 23 02:00:15 CET 2014: Running hooks for resume

感谢您抽出宝贵时间!

pw9qyyiw

pw9qyyiw1#

当我临时使用一个带USB适配器的旧PS2键盘在我的System76盒子上时,也发生了类似的事情。把USB键盘放回去修复了它。没有进一步研究它。但可能会给予你一个线索。

相关问题