So verwenden Sie den Linux-Befehl top (und verstehen seine Ausgabe)
Veröffentlicht: 2022-01-29 Der Linux-Befehl top
ist einer der wichtigsten Unix-ähnlichen Betriebssysteme. Das praktische Display ist vollgepackt mit nützlichen Informationen über die laufenden Prozesse und die Ressourcennutzung Ihres Systems. Aber wussten Sie, dass es auch Farbe, Hervorhebung und sogar elementare Diagramme unterstützt?
Ein informationsreiches Dashboard
Das top
gibt es seit 1984, und es gibt viele Varianten davon. Für diesen Artikel führen wir Ubuntu 18.04 mit allen angewendeten Patches und Version 3.3.12 von top
aus. Wir haben auch alles auf zwei anderen Testcomputern mit Querverweisen versehen, auf dem einen Fedora und auf dem anderen Manjaro.
Die standardmäßige top
Anzeige stopft so viele Informationen wie möglich in das Terminalfenster. Information ist eine Voraussetzung für die Verwaltung, also ist das eine gute Sache. Eine der Eigenschaften eines guten Systemadministrators ist die Fähigkeit, aufkommende Probleme zu erkennen und zu lösen, bevor sie den Service beeinträchtigen. top
bietet Ihnen ein Dashboard mit vielen verschiedenen Systemmetriken, die Ihnen dabei helfen.
Das Display lässt sich am besten als funktional und nicht intuitiv beschreiben, und es gibt viele Abkürzungen. Wenn Sie zum ersten Mal auf top
stoßen, fühlt es sich beengt, kryptisch und abstoßend an. Mit ein paar Tastendrücken können Sie jedoch den Inhalt und das Format der Anzeige Ihren persönlichen Vorlieben anpassen.
Überprüfen Sie Ihre Version von top
Um zu überprüfen, welche Version von top Sie haben, geben Sie Folgendes in ein Terminalfenster ein:
oben -v
Wenn Ihre Version weit hinter 3.3.12 zurückliegt, unterstützt sie möglicherweise nicht alle Funktionen, die wir behandeln werden.
Die Standardanzeige
Sie können top
beginnen, indem Sie Folgendes eingeben und „Enter“ drücken:
oben
Die Standardanzeige enthält zwei Informationsbereiche: den Zusammenfassungsbereich (oder Dashboard) und den Aufgabenbereich (oder Prozessliste). Standardmäßig aktualisiert top
seine Anzeige alle drei Sekunden – Sie werden dabei ein leichtes Flimmern bemerken.
Die erste Zahlenzeile auf dem Dashboard enthält die Zeit, wie lange Ihr Computer läuft, die Anzahl der angemeldeten Personen und die durchschnittliche Auslastung der letzten 1, 5 und 15 Minuten. Die zweite Zeile zeigt die Anzahl der Tasks und deren Status: Running, Stoped, Sleeping oder Zombie.
Die dritte Zeile zeigt die folgenden CPU-Werte (Central Processing Unit):
- us: Zeit, die die CPU mit der Ausführung von Prozessen für Personen im „Benutzerraum“ verbringt.
- sy: Zeitaufwand für die Ausführung von „Kernel Space“-Systemprozessen.
- ni: Zeitaufwand für die Ausführung von Prozessen mit einem manuell gesetzten Nice-Wert.
- id: Betrag der CPU-Leerlaufzeit.
- wa: Zeit, die die CPU damit verbringt, auf den Abschluss der E/A zu warten.
- hi: Zeitaufwand für die Bearbeitung von Hardware-Interrupts.
- si: Zeitaufwand für die Wartung von Software-Interrupts.
- st: Zeitverlust durch laufende virtuelle Maschinen („steal time“).
Die vierte Zeile zeigt die Gesamtmenge (in Kibibyte) des physischen Speichers und wie viel frei, belegt und gepuffert oder zwischengespeichert ist.
Die fünfte Zeile zeigt die Gesamtmenge (ebenfalls in Kibibyte) des Auslagerungsspeichers und wie viel frei, verwendet und verfügbar ist. Letzteres umfasst Speicher, von dem erwartet wird, dass er aus Caches wiederhergestellt werden kann.
Die Spaltenüberschriften in der Prozessliste lauten wie folgt:
- PID: Prozess-ID.
- USER: Der Besitzer des Prozesses.
- PR: Prozesspriorität.
- NI: Der nette Wert des Prozesses.
- VIRT: Menge des vom Prozess verwendeten virtuellen Speichers.
- RES: Größe des residenten Speichers, der vom Prozess verwendet wird.
- SHR: Menge an gemeinsam genutztem Speicher, die vom Prozess verwendet wird.
- S: Status des Prozesses. (Die Werte, die dieses Feld annehmen kann, finden Sie in der folgenden Liste).
- %CPU: Der Anteil der CPU-Zeit, die der Prozess seit der letzten Aktualisierung verwendet hat.
- %MEM: Der Anteil des verwendeten physischen Speichers.
- TIME+: Gesamte CPU-Zeit, die von der Aufgabe in Hundertstelsekunden verwendet wird.
- BEFEHL: Der Befehlsname oder die Befehlszeile (Name + Optionen).
Speicherwerte werden in Kibibyte angezeigt. Die COMMAND
-Spalte befindet sich außerhalb des Bildschirms rechts – sie passte nicht in das obige Bild, aber wir werden sie in Kürze sehen.
Der Status des Prozesses kann einer der folgenden sein:
- D: Ununterbrechbarer Schlaf
- R: Laufen
- S: Schlafen
- T: Verfolgt (gestoppt)
- Z: Zombie
Drücken Sie Q, um top
zu verlassen.
Scrollen der Anzeige
Sie können die Pfeiltasten nach oben oder unten, die Pos1-Taste, die Ende-Taste und die Bild-auf- oder -ab-Taste drücken, um sich nach oben und unten zu bewegen und auf alle Prozesse zuzugreifen.
Drücken Sie den Links- oder Rechtspfeil, um die Prozessliste seitwärts zu verschieben. Dies ist nützlich, um alle Spalten zu sehen, die nicht in die Grenzen des Terminalfensters passen.
In der Abbildung unten haben wir einige Male den Rechtspfeil gedrückt, um die Spalte COMMAND
.
Ändern der numerischen Einheiten
Ändern wir die Anzeigeeinheiten auf sinnvolle Werte. Drücken Sie das große E, um durch die Einheiten zu blättern, die zur Anzeige der Speicherwerte in diesen Optionen verwendet werden: Kibibytes, Mebibytes, Gibibytes, Tebibytes, Pebibytes und Exbibytes. Die verwendete Einheit ist das erste Element in den Zeilen vier und fünf.
Drücken Sie das kleine „e“, um dasselbe für die Werte in der Prozessliste zu tun: Kibibytes, Mebibytes, Gibibytes, Tebibytes und Pebibytes.
Wir haben E gedrückt, um die Speichereinheiten des Dashboards auf Gibibytes einzustellen, und „e“, um die Speichereinheiten der Prozessliste auf Mebibytes einzustellen.
Ändern des Zusammenfassungsinhalts
Sie können die Anzeigeeinstellungen für die Linien im Dashboard ändern oder ganz entfernen.
Drücken Sie l, um die Ladeübersichtszeile (die erste Zeile) ein- oder auszuschalten. Wir haben die Ladezusammenfassungszeile im Bild unten entfernt.
Wenn Sie eine Mehrkern-CPU haben, drücken Sie 1, um die Anzeige zu ändern und individuelle Statistiken für jede CPU anzuzeigen. Es gibt vier CPUs auf unserem Computer. Wir drücken 1, um zu sehen, wie hart jeder von ihnen arbeitet.
Dies nimmt natürlich mehr Platz auf dem Bildschirm innerhalb des Terminalfensters ein.
Sie können „t“ drücken, um die CPU-Anzeigen in einfache ASCII-Diagramme umzuwandeln, die den Prozentsatz der Nutzung für jede CPU anzeigen.
top
werden für jede CPU drei Zahlen und das Diagramm angezeigt. Von links nach rechts lauten die Zahlen wie folgt:
- Der kombinierte
us
undni
-Prozentsatz (Benutzerbereich + Aufgaben mit nicht standardmäßigen netten Einstellungen). - Der
sy
-Prozentsatz (Kernelspace). - Die Summe (gerundet auf einen ganzzahligen Wert).
Drücken Sie erneut „t“, um die Grafikanzeige auf solide Blockbuchstaben zu ändern.
Drücken Sie erneut „t“, um die CPU-Anzeige und die Task-Zusammenfassungszeile vollständig zu entfernen.
Drücken Sie „m“, um den Speicher zu durchlaufen und Speicherzeilen durch verschiedene Anzeigeoptionen zu tauschen. Beim ersten Drücken wird die Statistik durch ein ASCII-Diagramm ersetzt.
Ein weiterer Druck ändert die Grafik auf Blockzeichen.
Drücken Sie erneut „m“, um die CPU-Leitungen vollständig zu entfernen.
Wenn Sie möchten, können Sie CPU- und Speicherdiagramme gleichzeitig anzeigen. Drücken Sie einfach „t“ und „m“, bis Sie die gewünschte Kombination erhalten.
Farbe und Hervorhebung
Sie können „z“ drücken, um der Anzeige Farbe hinzuzufügen.
Wenn Sie an top
denken, denken Sie wahrscheinlich nicht an farbige Anzeigen und ASCII-Grafiken, aber sie sind direkt integriert.
Drücken Sie „y“, um laufende Aufgaben in der Prozessliste hervorzuheben. Durch Drücken von „x“ wird die Spalte hervorgehoben, die zum Sortieren der Prozessliste verwendet wird. Sie können zwischen fetter und umgekehrter Texthervorhebung umschalten, indem Sie „b“ drücken.
Sortieren nach Spalten
Standardmäßig ist die Prozessliste nach der %CPU
Spalte sortiert. Sie können die Sortierspalte ändern, indem Sie Folgendes drücken:
- P: Die
%CPU
Spalte. - M: Die
%MEM
Spalte. - N: Die
PID
Spalte. - T: Die Spalte
TIME+
.
In der Abbildung unten ist die Prozessliste nach der PID
-Spalte sortiert.
Siehe die vollständige Befehlszeile
Durch Drücken von „c“ wird die COMMAND-Spalte zwischen der Anzeige des Prozessnamens und der vollständigen Befehlszeile umgeschaltet.
Um einen „Baum“ von Prozessen anzuzeigen, die von anderen Prozessen gestartet oder hervorgebracht wurden, drücken Sie V.
Siehe Prozesse für einen einzelnen Benutzer
Drücken Sie „u“, um die Prozesse für einen einzelnen Benutzer anzuzeigen. Sie werden nach dem Namen oder der UID gefragt.
Geben Sie den Namen der UID der Person ein, die Sie überwachen möchten. Wir geben „dave“ ein und drücken „Enter“. Jetzt gehören die einzigen Prozesse im Aufgabenbereich dem Benutzer dave
.
Siehe nur Aktive Aufgaben
Drücken Sie I, um nur aktive Aufgaben zu sehen.
Aufgaben, die seit dem letzten Update keine CPU verbraucht haben, werden nicht angezeigt.
Legen Sie fest, wie viele Prozesse angezeigt werden sollen
Drücken Sie „n“, um die Anzeige auf eine bestimmte Anzahl von Zeilen zu beschränken, unabhängig davon, ob die Aufgaben aktiv sind. Sie werden aufgefordert, die Anzahl der anzuzeigenden Prozesse anzugeben.
Wir haben 10 eingegeben und die Eingabetaste gedrückt, sodass 10 Prozesse im Aufgabenbereich angezeigt werden.
Wiederholen Sie einen Prozess
Sie können „r“ drücken, um den netten Wert (Priorität) für einen Prozess zu ändern. Sie werden nach der Prozess-ID gefragt. Drücken Sie einfach die Eingabetaste, um die Prozess-ID der Aufgabe oben im Prozessfenster zu verwenden. Wir geben 7800 ein, was zufällig die Prozess-ID einer Instanz von Firefox ist.
Nachdem Sie die Eingabetaste gedrückt haben, werden Sie aufgefordert, den neuen netten Wert einzugeben, der auf den Prozess angewendet werden soll. Wir geben 15 ein und drücken dann die Eingabetaste.
Der neue Nice-Wert wird sofort auf den Prozess angewendet.
RELATED: So setzen Sie Prozessprioritäten mit nice and renice unter Linux
Beenden Sie einen Prozess
Drücken Sie „k“, um einen Prozess zu beenden. Sie werden dann nach der Prozess-ID gefragt, die Sie beenden möchten. Tatsächlich können Sie jedes Signal an den Prozess senden. Wir beenden den Prozess 7879, der nicht mehr reagiert.
Sie erhalten die Möglichkeit, das Signal einzugeben, das Sie senden möchten. Sie können es mit Name oder Nummer angeben. Wenn Sie einfach die Eingabetaste drücken, sendet top
das SIGTERM
-Signal (Kill).
Sobald Sie die Eingabetaste drücken, wird das Signal an den Prozess gesendet.
RELATED: So beenden Sie Prozesse vom Linux-Terminal
Anpassen der Anzeige
Sie können auch die angezeigten Farben und Spalten anpassen. Wir werden die für Eingabeaufforderungen verwendete Farbe ändern, die Standardfarbe ist rot.
Drücken Sie das große Z, um zur Seite mit den Farbeinstellungen zu gelangen. Der obere Teil des Bildschirms zeigt die von den verschiedenen Anzeigeelementen verwendeten Farben. Um anzugeben, welches Anzeigeelement Sie ändern möchten, drücken Sie eine der folgenden Tasten, bei denen zwischen Groß- und Kleinschreibung unterschieden wird:
- S : Zusammenfassungsdatenbereich.
- M : Nachrichten und Eingabeaufforderungen.
- H : Spaltenüberschriften.
- T : Task-Informationen in der Prozessliste.
Wir drücken M, um die Eingabeaufforderungen zu ändern.
Um eine Farbe auszuwählen, drücken Sie eine der folgenden Zahlen:
- 0: Schwarz.
- 1: Rot.
- 2: Grün.
- 3: Gelb.
- 4: Blau.
- 5: Magenta.
- 6: Cyan.
- 7: Weiß.
Wir drücken 6, um Cyan zu verwenden.
Drücken Sie die Eingabetaste, um Ihre Einstellungen zu speichern. Eingabeaufforderungen werden jetzt in der von Ihnen ausgewählten Farbe angezeigt.
Wir können auch die im Feldverwaltungsbildschirm angezeigten Spalten ändern. Drücken Sie F, um den Bildschirm „Feldverwaltung“ aufzurufen.
Angezeigte Felder haben ein Sternchen ( *
) neben sich und sind fett hervorgehoben. Drücken Sie die Aufwärts- und Abwärtspfeile, um die Markierung durch die Liste der Felder zu bewegen.
Wenn Sie die Hervorhebung vom unteren Rand einer Spalte wegbewegen, wird sie oben in der nächsten angezeigt (es sei denn, Sie befinden sich am Ende der letzten Spalte). Wenn Sie es vom oberen Rand einer Spalte verschieben, erscheint es am Ende der vorherigen (es sei denn, Sie befinden sich am oberen Rand der ersten Spalte).
Wir haben die Markierung auf den Eintrag COMMAND
und dann „d“ gedrückt, um das Sternchen ( *
) zu entfernen. Wir sind dann zum UID
-Eintrag gegangen und haben „d“ gedrückt, um ein Sternchen neben diesem Eintrag zu platzieren. Das bedeutet, dass die Spalte COMMAND
nicht angezeigt wird, aber die Spalte UID
.
Während sich die Markierung auf der UID
-Spalte befindet, drücken wir „s“, um die Prozessliste nach der UID
-Spalte zu sortieren.
Drücken Sie die Eingabetaste, um Ihre Einstellungen zu speichern, und drücken Sie dann „q“, um den Bildschirm „Feldverwaltung“ zu verlassen.
Die UID
-Spalte hat die COMMAND
Spalte ersetzt, und die Prozessliste wird danach sortiert.
Alternativer Anzeigemodus
Dies funktioniert am besten im Vollbildmodus. Drücken Sie A, um vier Bereiche in der Prozessliste anzuzeigen, und drücken Sie dann „a“, um von Bereich zu Bereich zu wechseln.
Jeder Bereich hat eine andere Sammlung von Spalten, aber jeder ist auch über den Bildschirm „Feldverwaltung“ anpassbar. Dies gibt Ihnen die Möglichkeit, eine benutzerdefinierte Vollbildanzeige zu haben, die unterschiedliche Informationen in jedem Bereich anzeigt, und die Möglichkeit, jeden Bereich nach einer anderen Spalte zu sortieren.
Andere Tastenanschläge
Im Folgenden finden Sie einige andere Schlüssel, die Sie in top
möglicherweise nützlich finden:
- W : Speichern Sie Ihre Einstellungen und Anpassungen, damit sie beim nächsten Start noch wirksam sind
top
. - d : Stellen Sie eine neue Anzeigeaktualisierungsrate ein.
- Leertaste : Zwingen Sie
top
, die Anzeige jetzt zu aktualisieren.
Top Banane
Wie wir gesehen haben, hat top
ein ziemliches Repertoire. Andere Programme wie htop
wurden davon inspiriert, aber sie haben jeweils ihre eigene Herangehensweise an die Dinge.
top
ist aber überall verbaut. Wenn Sie in Unternehmen gehen, um sich Netzwerke oder Server anzusehen, wird Ihnen oft gesagt, dass an den Live-Servern absolut nichts geändert werden kann. Der Client macht die Regeln, also müssen Sie verwenden, was bereits installiert ist.
Auch wenn Sie ein anderes Monitoring-Tool bevorzugen, sollten Sie top
kennenlernen. Früher oder später werden Sie sich wahrscheinlich in einer Situation wiederfinden, in der Sie nur noch darauf zugreifen können.
Linux-Befehle | ||
Dateien | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · konvertieren · rclone · shred · srm | |
Prozesse | alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg | |
Vernetzung | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw |
RELATED: Beste Linux-Laptops für Entwickler und Enthusiasten