什么是启动特定服务

什么是启动特定服务

我正在运行 AlmaLinux 9,并且我有一个服务(称为“X”)。我想弄清楚是什么在启动服务 X(因为它已被禁用)。

是否有一个命令可以显示哪个其他服务将启动 X(作为依赖项或其他)?

答案1

systemd-analyze似乎是你正在寻找的。您需要安装graphviz以获得图形渲染器dot,其输入格式systemd-analyze dot会生成。 (这不必发生在同一台机器上。为了简单起见,让我们在同一台机器上进行。)

systemd-analyze dot --require > graph.dot
grep -v 'color="red"' | dot -Tsvg Gsplines=line > graph_embedding.svg
firefox graph_embedding.svg # or some other SVG viewer

(在这里,我们抑制了与红色边缘的“冲突”,并dot在连接节点时使用直线;它默认使用的样条线使得几乎每个较大的嵌入图形都难以阅读;我不清楚作者在那里的想法。 )

一张图片中的信息可能有点多。我建议您编写一个快速脚本,从您感兴趣的节点开始提取反向依赖关系的子树,但可惜,这是一个一次性问题(希望如此),因此请graph.dot在您最喜欢的文本编辑器中打开。查找 的出现->"X.service",记下 剩下的内容->,然后您要么已经了解需要 X 的内容,要么找出开始的内容通过搜索作为 的右侧的服务->

相关内容