Einsatz und Auswertung des Analysewerkzeugs systemd-analyze: Unterschied zwischen den Versionen
| Zeile 2: | Zeile 2: | ||
systemd-analyze kann verwendet werden, um Leistungsstatistiken beim Systemstart zu ermitteln und andere Zustands- und Ablaufverfolgungsinformationen vom System- und Dienstmanager abzurufen und die Korrektheit von Unit-Dateien zu überprüfen. Es wird auch verwendet, um auf spezielle Funktionen zuzugreifen, die für das erweiterte Systemmanager-Debugging nützlich sind. | systemd-analyze kann verwendet werden, um Leistungsstatistiken beim Systemstart zu ermitteln und andere Zustands- und Ablaufverfolgungsinformationen vom System- und Dienstmanager abzurufen und die Korrektheit von Unit-Dateien zu überprüfen. Es wird auch verwendet, um auf spezielle Funktionen zuzugreifen, die für das erweiterte Systemmanager-Debugging nützlich sind. | ||
*Wenn kein Befehl übergeben wird, wird systemd-analyze time impliziert.= | *Wenn kein Befehl übergeben wird, wird systemd-analyze time impliziert.= | ||
| − | + | =systemd-analyze time= | |
Dieser Befehl gibt die Zeit aus, die im Kernel verbracht wurde, bevor der Userspace erreicht wurde, die Zeit, die in der initrd verbracht wurde, bevor der normale System-Userspace erreicht wurde, und die Zeit, die der normale System-Userspace zum Initialisieren benötigte. Beachten Sie, dass diese Messungen einfach die Zeit messen, die bis zu dem Punkt verstrichen ist, an dem alle Systemdienste gestartet wurden, aber nicht unbedingt bis sie die Initialisierung vollständig abgeschlossen haben oder die Festplatte im Leerlauf ist. | Dieser Befehl gibt die Zeit aus, die im Kernel verbracht wurde, bevor der Userspace erreicht wurde, die Zeit, die in der initrd verbracht wurde, bevor der normale System-Userspace erreicht wurde, und die Zeit, die der normale System-Userspace zum Initialisieren benötigte. Beachten Sie, dass diese Messungen einfach die Zeit messen, die bis zu dem Punkt verstrichen ist, an dem alle Systemdienste gestartet wurden, aber nicht unbedingt bis sie die Initialisierung vollständig abgeschlossen haben oder die Festplatte im Leerlauf ist. | ||
=systemd-analyze blame= | =systemd-analyze blame= | ||
| − | + | Dieser Befehl zeigt eine Liste aller laufenden Einheiten, sortiert nach der Zeit, die sie zum Initialisieren benötigt haben. | |
| − | + | Diese Informationen können verwendet werden, um die Startzeiten zu optimieren. | |
| − | + | Beachten Sie, dass die Ausgabe irreführend sein kann, da die Initialisierung eines Dienstes langsam sein kann, nur weil auf den Abschluss der Initialisierung eines anderen Dienstes gewartet wird. Beachten Sie auch: systemd-analyze-Schuld zeigt keine Ergebnisse für Dienste mit Type=simple an, da systemd solche Dienste als sofort gestartet betrachtet, daher kann keine Messung der Initialisierungsverzögerungen durchgeführt werden. | |
| − | + | Beachten Sie auch, dass dieser Befehl nur die Zeiteinheiten anzeigt, die für den Start benötigt wurden, er zeigt nicht an, wie lange Einheitsjobs in der Ausführungswarteschlange verbracht haben. | |
| − | + | Insbesondere zeigt es die Zeiteinheiten, die im "aktivierenden" Zustand verbracht wurden, was nicht für Einheiten wie Geräteeinheiten definiert ist, die direkt von "inaktiv" zu "aktiv" übergehen. | |
| − | + | Dieser Befehl vermittelt daher einen Eindruck von der Leistung des Programmcodes, kann jedoch die durch das Warten auf Hardware und ähnliche Ereignisse eingeführte Latenz nicht genau widerspiegeln. | |
Version vom 3. Januar 2023, 16:47 Uhr
Beschreibung
systemd-analyze kann verwendet werden, um Leistungsstatistiken beim Systemstart zu ermitteln und andere Zustands- und Ablaufverfolgungsinformationen vom System- und Dienstmanager abzurufen und die Korrektheit von Unit-Dateien zu überprüfen. Es wird auch verwendet, um auf spezielle Funktionen zuzugreifen, die für das erweiterte Systemmanager-Debugging nützlich sind.
- Wenn kein Befehl übergeben wird, wird systemd-analyze time impliziert.=
systemd-analyze time
Dieser Befehl gibt die Zeit aus, die im Kernel verbracht wurde, bevor der Userspace erreicht wurde, die Zeit, die in der initrd verbracht wurde, bevor der normale System-Userspace erreicht wurde, und die Zeit, die der normale System-Userspace zum Initialisieren benötigte. Beachten Sie, dass diese Messungen einfach die Zeit messen, die bis zu dem Punkt verstrichen ist, an dem alle Systemdienste gestartet wurden, aber nicht unbedingt bis sie die Initialisierung vollständig abgeschlossen haben oder die Festplatte im Leerlauf ist.
systemd-analyze blame
Dieser Befehl zeigt eine Liste aller laufenden Einheiten, sortiert nach der Zeit, die sie zum Initialisieren benötigt haben. Diese Informationen können verwendet werden, um die Startzeiten zu optimieren. Beachten Sie, dass die Ausgabe irreführend sein kann, da die Initialisierung eines Dienstes langsam sein kann, nur weil auf den Abschluss der Initialisierung eines anderen Dienstes gewartet wird. Beachten Sie auch: systemd-analyze-Schuld zeigt keine Ergebnisse für Dienste mit Type=simple an, da systemd solche Dienste als sofort gestartet betrachtet, daher kann keine Messung der Initialisierungsverzögerungen durchgeführt werden. Beachten Sie auch, dass dieser Befehl nur die Zeiteinheiten anzeigt, die für den Start benötigt wurden, er zeigt nicht an, wie lange Einheitsjobs in der Ausführungswarteschlange verbracht haben. Insbesondere zeigt es die Zeiteinheiten, die im "aktivierenden" Zustand verbracht wurden, was nicht für Einheiten wie Geräteeinheiten definiert ist, die direkt von "inaktiv" zu "aktiv" übergehen. Dieser Befehl vermittelt daher einen Eindruck von der Leistung des Programmcodes, kann jedoch die durch das Warten auf Hardware und ähnliche Ereignisse eingeführte Latenz nicht genau widerspiegeln.
- systemd-analyze blame