Zeigt eine systemd-Unit-Datei mit den darin enthaltenen Overrides an.

Zeigt eine systemd-Unit-Datei mit den darin enthaltenen Overrides an.

systemctl cat myunit.servicedruckt den Inhalt der Hauptdatei, myunit.servicegefolgt von allen Override-Dateien. Gibt es eine Möglichkeit, die Unit-Datei zu drucken, die systemd tatsächlich verwenden wird, also die, die durch das Zusammenführen der Overrides in die Haupt-Unit entsteht?

Antwort1

Sie können verwenden systemctl show myunit.service, um Eigenschaften der Einheit anzuzeigen. Es werden alle Eigenschaften gedruckt, die mit dieser Einheitendatei, der globalen Konfiguration und allen in den Einheitendateien vorgenommenen Anpassungen verknüpft sind.

Standardmäßig werden leere Eigenschaften unterdrückt. Verwenden Sie --all, um diese ebenfalls anzuzeigen.

systemctl show myunit.service --all

Wenn Sie eine bestimmte Eigenschaft überprüfen möchten, verwenden Sie die folgende Syntax:

systemctl show myunit.service --property=<PROPERTY_NAME> 

#example
#systemctl show myunit.service --property=ExecStart 

Beachten Sie, dass die Ausgabe möglicherweise nicht genau Ihren Erwartungen entspricht:

Beachten Sie, dass die vom Befehl angezeigten Eigenschaften im Allgemeinen eher niedrigstufige, normalisierte Versionen der ursprünglichen Konfigurationseinstellungen sind und neben der Konfiguration auch den Laufzeitstatus offenlegen. Beispielsweise enthalten die für Serviceeinheiten angezeigten Eigenschaften die aktuelle Hauptprozesskennung des Dienstes als „MainPID“ (was den Laufzeitstatus darstellt), und Zeiteinstellungen werden immer als Eigenschaften angezeigt, die mit dem Suffix „...USec“ enden, selbst wenn eine entsprechende Konfigurationsoption mit „...Sec“ endet, da Mikrosekunden die normalisierte Zeiteinheit sind, die intern vom System- und Servicemanager verwendet wird.

Einzelheiten zu vielen dieser Eigenschaften finden Sie in der Dokumentation der D-Bus-Schnittstelle, die diese Eigenschaften unterstützt, sieheorg.freedesktop.systemd1(5).

verwandte Informationen