有没有办法systemd
告诉我粗糙的当我彻底关闭整个系统时,它将按什么顺序关闭服务?由于systemd
将同时关闭所有服务,我知道没有办法知道确切的顺序,但知道systemd
对关闭顺序有什么限制仍然非常有帮助,最好是以某种易于理解的可视化方式。
这样做的动机是,对于服务文件的开发和调试来说,获得这个文件会方便得多预料到的列表,而不是每次我想要确定对服务单元文件或 systemd 配置的其他方面所做的更改会对关机顺序产生什么影响时,都必须真正关机,然后重新启动并检查日志。
我希望
systemctl list-dependencies --before shutdown.service
可以完成这项工作,但它只会发出:
shutdown.service
答案1
也许陈述显而易见的事情会降低学习效果,但正如原始帖子中所要求的那样,为了获得 shutdown-target 的完整反向依赖列表,我所做的就是:
systemctl list-dependencies --after shutdown.target
OT:我遇到了一个问题,kubernetes 系统的关闭会挂起(机器变得无响应并且不会关闭),因为在实际服务完成关闭之前 nfs 挂载就被终止了。这个问题帮助我取得了进步。
答案2
以下内容可能对您有帮助:
systemctl list-dependencies --before shutdown.target
问候,
答案3
关机顺序通常与开机顺序相反。
也就是说,守护进程都会收到关闭信号,并且实际关闭和退出所需的时间会有所不同。
如果只使用普通的 systemd,我认为预测哪些服务将以何种顺序退出是不切实际的。此外,依赖项将控制某些顺序。