![Was ist das Starten eines bestimmten Dienstes](https://rvso.com/image/231065/Was%20ist%20das%20Starten%20eines%20bestimmten%20Dienstes.png)
Ich verwende AlmaLinux 9 und habe einen Dienst (ich nenne ihn „X“). Ich möchte herausfinden, was den Dienst X startet (da er deaktiviert ist).
Gibt es einen Befehl, der anzeigt, welcher andere Dienst X startet (als Abhängigkeit oder anders)?
Antwort1
systemd-analyze
scheint das zu sein, wonach Sie suchen. Sie müssen es installieren, graphviz
um den Graph-Renderer zu erhalten dot
, dessen Eingabeformat systemd-analyze dot
generiert wird. (Dies muss nicht auf derselben Maschine geschehen. Der Einfachheit halber machen wir es auf derselben Maschine.)
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
(Hier unterdrücken wir die „Konflikte mit“ roten Kanten und verwenden dot
beim Verbinden von Knoten gerade Linien. Die standardmäßig verwendeten Splines führen dazu, dass fast jede größere Grapheneinbettung mehrdeutig lesbar ist. Mir ist nicht klar, was sich die Autoren dabei gedacht haben.)
Das sind vielleicht ein bisschen viele Informationen in einem Bild. Ich würde Ihnen empfehlen, ein kurzes Skript zusammenzuschustern, um den Teilbaum der umgekehrten Abhängigkeiten ausgehend von Ihrem Knoten von Interesse zu extrahieren, aber leider ist dies (hoffentlich) ein einmaliges Problem, also öffnen Sie es graph.dot
in Ihrem bevorzugten Texteditor. Suchen Sie nach Vorkommen von ->"X.service"
, notieren Sie, was vom übrig bleibt ->
, dann verstehen Sie entweder bereits, was X erfordert, oder Sie finden heraus, was beginntDasService, indem Sie danach als rechte Seite von suchen ->
.