ArchLinux早就使用systemd替代了init脚本。
不用图形界面、或者使用 i3、awesome 这样简单的窗口管理器时,systemd 可以替代 acpid 处理 ACPI 事件。
注意: systemd 无法处理交流电源和电池 ACPI 事件,所以还得使用 Laptop Mode Tools 或 acpid 工具。
systemd能够定义的电源管理动作包括:
- HandlePowerKey:按下电源键后的动作
- HandleSleepKey:按下挂起键后的动作
- HandleHibernateKey: 按下休眠键后的动作
- HandleLidSwitch:合上笔记本盖后待机
这些动作的值可以是
- ignore(什么都不做)
- poweroff(关机)
- reboot(重新启动)
- halt(关机,和poweroff有什么区别,需要手动断开电源?)
- suspend(待机挂起)
- hibernate(休眠)
默认情况是,当我合上笔记本屏幕的时候,系统会待机。
如果我不想让系统在我合上笔记本的时候待机,怎么办呢?
用你习惯的编辑器打开 /etc/systemd/logind.conf
,
去掉HandleLidSwitch
前面的注释符号#
,并把它的值从suspend修改为ignore。
然后systemctl restart systemd-logind
,使更改生效。再合上笔记本盖子,也不会待机了。
如果再想进入待机状态,可执行systemctl suspend
。
参考 arch wiki.