我的 Debian 8 vm 有很多这样的 systemd 日志:
Apr 28 23:02:09 foo systemd[22305]: Starting Shutdown.
Apr 28 23:02:09 foo systemd[22305]: Reached target Shutdown.
Apr 28 23:02:09 foo systemd[22305]: Starting Exit the Session...
Apr 28 23:02:09 foo systemd[22305]: Received SIGRTMIN+24 from PID 22461 (kill).
Apr 28 23:02:10 foo systemd[22469]: Starting Paths.
Apr 28 23:02:10 foo systemd[22469]: Reached target Paths.
Apr 28 23:02:10 foo systemd[22469]: Starting Timers.
即很多Starting Shutdown
行和SIGRTMIN+24
。
文档说:
SIGRTMIN+24:立即退出管理器(仅适用于 --user 实例)。
这里的“关机”是什么意思?我不认为这意味着关闭整个机器 - 没有重新启动的迹象。那么它只是出于某种原因重新启动 systemd 吗?什么会导致这种情况?
使困惑!
从一些最近(不确定)的 systemd 版本开始,当用户登录时,会启动一个用户 systemd (systemd --user) 实例(每个用户一个)。然后 systemd 用户实例可以为该用户启动进程。
当用户关闭他的最后一个会话时,systemd 的用户实例被用户 systemd-exit 服务 (/usr/lib/systemd/user/systemd-exit.service) 杀死。
所以这里的关闭顺序是systemd --user进程的关闭