10

我试图了解我的新项目中不同 systemd 服务之间的依赖关系。我们正在使用 yocto 构建系统和 systemd/system 服务。

如果我表演,

systemctl -l

它将按字母顺序列出所有服务。但我专门寻找可用于“按加载顺序”列出 systemd 服务的任何命令/脚本。

请帮忙。

4

2 回答 2

21

不幸的是,由于启动过程的并行性质和服务之间潜在的复杂依赖关系,服务启动顺序不是很确定。但是,systemd-analyze(如果存在于您的系统上)可以以图形方式绘制服务的启动顺序:

systemd-analyze plot > startup_order.svg

它还可以用于以图形方式绘制服务依赖关系:

systemd-analyze dot | dot -Tsvg > systemd.svg
于 2015-03-27T22:49:51.237 回答
3

@shibley 的建议systemd-analyze很棒。在此处添加其他有用systemd-analyze的命令,因为我还不能评论...

  1. 找出对启动时间影响最大​​的服务:

    systemd-analyze blame
    
  2. 在具有时序影响的服务依赖项的终端中打印一棵树

    systemd-analyze critical-chain
    
于 2021-09-16T04:51:45.170 回答