我试图了解我的新项目中不同 systemd 服务之间的依赖关系。我们正在使用 yocto 构建系统和 systemd/system 服务。
如果我表演,
systemctl -l
它将按字母顺序列出所有服务。但我专门寻找可用于“按加载顺序”列出 systemd 服务的任何命令/脚本。
请帮忙。
不幸的是,由于启动过程的并行性质和服务之间潜在的复杂依赖关系,服务启动顺序不是很确定。但是,systemd-analyze(如果存在于您的系统上)可以以图形方式绘制服务的启动顺序:
systemd-analyze plot > startup_order.svg
它还可以用于以图形方式绘制服务依赖关系:
systemd-analyze dot | dot -Tsvg > systemd.svg
@shibley 的建议systemd-analyze
很棒。在此处添加其他有用systemd-analyze
的命令,因为我还不能评论...
找出对启动时间影响最大的服务:
systemd-analyze blame
在具有时序影响的服务依赖项的终端中打印一棵树
systemd-analyze critical-chain