从 systemctl 手册页:
暂停
暂停系统。这将触发特殊目标单元suspend.target的激活。该命令是异步的,将在挂起操作成功入队后返回。它不会等待挂起/恢复周期完成。
在我的系统上suspend.target
看起来像这样:
[Unit]
Description=Suspend
Documentation=man:systemd.special(7)
DefaultDependencies=no
Requires=systemd-suspend.service
After=systemd-suspend.service
StopWhenUnneeded=yes
如果我查看man:systemd.special(7)
那里列出的内容,我会发现:
suspend.target 用于挂起系统的特殊目标单元。这会引入 sleep.target。
如果我深入研究,systemd-suspend.service
我会得到:
systemd-suspend.service 是由suspend.target 拉入的系统服务,负责实际的系统挂起。
...
在内部,该服务会将类似“mem”的字符串回显到 /sys/power/state 中,以触发实际的系统挂起。具体写什么可以在 /etc/systemd/sleep.conf 或 sleep.conf.d 文件的“[Sleep]”部分配置。
上的文档sleep.conf
告诉我:
默认配置是在编译期间定义的,因此只有在需要偏离这些默认配置时才需要配置文件。
我的系统上没有sleep.conf
,所以它必须使用编译的默认值。我不知道那些是什么。
默认情况下发送给/sys/power/state
朋友的确切命令是什么?systemctl suspend
默认值是
"mem", "standby", "freeze"
(最后两个和配置睡眠模式的功能已在 2013 年添加,因此它们可能不适用于较旧的设置)。您引用的手册页描述了它是如何完成的,即
systemd-suspend.service
写道有关睡眠状态和
sysfs
用户空间可用于控制这些状态的接口的更多信息,请参阅官方文档:系统睡眠状态