![Linux 上的休眠功能暴露在哪里?](https://linux22.com/image/37808/Linux%20%E4%B8%8A%E7%9A%84%E4%BC%91%E7%9C%A0%E5%8A%9F%E8%83%BD%E6%9A%B4%E9%9C%B2%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
当我使用resume=..
内核选项启动并initrd
使用选项构建时-h
,用户态工具(例如,batti
)为我提供了休眠的选择;当我在没有它们的情况下启动时,它不会。
我有一个能够休眠/恢复的系统,可供这些工具发现这一点,这一事实在哪里? (这是在 Slackware 上的,以防这是特定于 init 的。)
答案1
一种方法是通过/sys/power
接口。引发休眠的常用方法(由各种高级工具使用)是写入其中的几个字段:
echo shutdown > /sys/power/disk
echo disk > /sys/power/state
我相信第一个设定了方法,第二个触发了变革。1但是,如果您读从这些节点中,您可以获得可能性列表:
> cat /sys/power/disk
platform [shutdown] reboot suspend
> cat /sys/power/state
freeze standby mem disk
由于shutdown
和disk
可用,机器可以进入休眠状态。
1 您还可以通过系统的 ACPI 硬件设置执行相同的操作,假设驱动程序正常工作,并将platform
计算机置于挂起状态(状态保存到 RAM)。/sys/power/disk
echo mem > /sys/power/state