![syslog 中的 SIGRTMIN+24 是什么?](https://linux22.com/image/682157/syslog%20%E4%B8%AD%E7%9A%84%20SIGRTMIN%2B24%20%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我的 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?是什么原因造成的?
使困惑!
答案1
从一些开始最近的(不确定)systemd 的版本,当用户登录时,会启动用户 systemd(systemd --user)实例(每个用户一个)。然后,systemd 用户实例可以为该用户启动进程。
当用户关闭他的最后一个会话时,该 systemd 用户实例将被用户 systemd-exit 服务 (/usr/lib/systemd/user/systemd-exit.service) 终止。
所以这里的关闭顺序是关闭 systemd --user 进程