在其他操作系统上,有多种方法可以查看是什么进程或事件将它们从挂起状态中唤醒。我经常让我的笔记本电脑处于暂停状态多天,有时会发现它已经自行醒来并且正在加热它所搁置的任何表面:)
有没有办法找出是什么唤醒了它,以便我可以防止这种事情再次发生?在 Ubuntu 12.04(基本 Luna)上。
答案1
我所知道的唯一常用于强制唤醒的东西(除了我猜的硬件中断)是命令rtcwake
。其来源使用ioctl()
实时时钟设备上的调用(默认情况下为/dev/rtc0
),这意味着它必须具有权限(因此它不能是您作为普通用户在桌面上启动的任何内容)。
当我得知 Ubuntu 上有一个特权服务可以做类似的事情时,我会感到非常惊讶(为什么?)。但是,我确实注意到偶尔一个睡眠系统在无人理会的情况下无缘无故地醒来。我没有猫,所以我认为这是振动鼠标的原因,或者可能是一些奇怪的电压波动,或者其他一些随机原因。
如果这种情况经常发生,则可能表明 ACPI 驱动程序中存在错误。