top

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Ein Terminal öffnen

Inhaltsverzeichnis
  1. Installation
  2. Verwendung
  3. Links

Wiki/Icons/terminal.png Der Befehl top zeigt eine dynamische Übersicht der auf dem System laufenden Prozesse und die Systemressourcen an. Das Kommandozeilenprogramm ist ein Klassiker, wenn man einen schnellen Überblick benötigt, womit das System gerade beschäftigt ist.

htop ist eine interessante Alternative zu top, die allerdings erst nachinstalliert werden muss. Es ist sehr ähnlich, besitzt aber eine auf ncurses aufbauende Textoberfläche. Es erlaubt horizontales und vertikales Scrollen sowie die Manipulation von Prozessen über die Funktionstasten. Zudem bietet es weitere Komfortfunktionen. Für ein Systemmonitoring mit Echtzeit-Statistiken kann man Glances nutzen.

Installation

Das Programm ist im Paket

integriert und in jeder Ubuntu-Installation bereits enthalten.

Verwendung

Kurze Syntaxbeschreibung für die Verwendung in der Shell:

top [OPTION] 

Zum Beenden Q drücken. Im Zweifelsfall Strg + C .

Optionen

OptionBeschreibung
-b Startet top im "Batch"-Modus. Tastatureingaben werden ignoriert und die Ausgabe ist frei von Terminal-Kontroll-Sequenzen. Praktisch um die Ausgabe von top z.B. in eine Datei zu leiten
-c Zeigt das vollständige Kommando inklusive Pfadangaben an
-d ss.tt Wiederholrate in Sekunden * 1/100 Sekunden
-i Prozesse, die den Status "idle" besitzen, die also ruhen, werden nicht angezeigt
-n ANZAHL Beschränkt die Ausgabe auf die angegebene Zahl von Iterationen.
-u BENUTZERNAME bzw. UID Zeigt nur die Prozesse des entsprechenden Benutzers an
-p PID1 -p PID2 ... Zeigt nur Prozesse mit den angegeben Prozess-IDs an
-S Zeigt die absolute Zeit an, seit der Prozess gestartet wurde

Populäre Hotkeys im Betrieb

TasteBeschreibung
H Zeigt eine Hilfeseite
Z Färbt die Ausgabe ein
P Sortierung nach CPU-Last
M Sortierung nach Speicherverbrauch
N Sortierung nach PID (numerisch)
A Sortierung nach Alter
T Sortierung nach Zeit
U BENUTZERNAME bzw. UID Zeigt nur die Prozesse des entsprechenden Benutzers an
W Schreibt aktuelle Optionsauswahl in eine Konfigurationsdatei (~/.toprc)
K PID SIGNAL kill Prozess PID mit Signal SIGNAL
L , M , T Ein-/Ausschalten der Zusammenfassungen für Load, Meminfo und Task/CPU
1 Ein-/Ausschalten der Zusammenfassung der CPUs (nur bei mehreren logischen CPUs relevant)

Beispiele

Einkern-Prozessor

top - 23:16:45 up 10:00,  2 users,  load average: 0.35, 0.30, 0.32
Tasks: 147 total,   1 running, 146 sleeping,   0 stopped,   0 zombie
Cpu(s):  7.3% us,  2.3% sy,  0.7% ni, 88.0% id,  1.0% wa,  0.0% hi,  0.7% si
Mem:   1034652k total,  1024292k used,    10360k free,    86984k buffers
Swap:   979956k total,   224092k used,   755864k free,   563856k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 4875 root      15   0  144m  73m  11m S  3.0  7.3  19:19.53 Xorg
 5970 otto      15   0 16140 8956 6268 S  1.7  0.9   1:23.51 metacity
 8814 otto      15   0 92088  34m  22m S  1.0  3.4   1:22.91 gaim
28908 otto      15   0 40696  14m 9296 S  1.0  1.5   0:01.39 gnome-terminal
 7741 otto      15   0 26104 9120 6580 S  0.7  0.9   0:12.40 notification-da
 3712 otto      15   0 40180  20m  12m S  0.7  2.0   0:01.18 gedit
 5841 root      30  15  6192 4780  640 S  0.3  0.5   0:57.02 preload
 5975 otto      15   0 39988  17m  11m S  0.3  1.8   0:43.02 gnome-panel
 5990 otto      15   0 10080 3460 2688 S  0.3  0.3   0:08.63 devilspie
 3724 otto      16   0  2192 1136  856 R  0.3  0.1   0:00.05 top
    1 root      16   0  1568  476  448 S  0.0  0.0   0:01.25 init
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:01.84 ksoftirqd/0
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0
    5 root      10  -5     0    0    0 S  0.0  0.0   0:01.15 events/0
    6 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khelper
    7 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread

Mehrkern-Prozessor

Vier logische CPUs im System, Zusammenfassung der CPUs mit 1 deaktiviert:

top - 19:56:46 up 63 days, 22:53,  1 user,  load average: 0.03, 0.08, 0.03
Tasks: 194 total,   1 running, 191 sleeping,   0 stopped,   2 zombie
 Cpu0 :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
 Cpu1 :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
 Cpu2 :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
 Cpu3 :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   2074324k total,  2021356k used,    52968k free,    20408k buffers
Swap:        0k total,        0k used,        0k free,   902692k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 5742 root      16   0  2296 1148  836 R  0.3  0.1   0:00.02 top
    1 root      16   0  1596  532  464 S  0.0  0.0   0:08.61 init
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.08 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.27 migration/1
    6 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1
    7 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/1
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/2
    9 root      39  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2
   10 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/2
   11 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/3
   12 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3
   13 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/3
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.11 events/0
   15 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/1
   16 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/2

Die Abkürzungen lassen sich wie folgt erklären:

CPU-Zeile
AbkürzungBedeutung
us user - Zeit, die von ungeniceten Benutzerprozessen verwendet wird
sy system - Zeit, die von Kernelprozessen verwendet wird
ni nice - Zeit, die von ge"nice"ten Userprozessen verwendet wird
id idle - Zeit, die das System im Leerlauf verbringt
wa IO-wait - Zeit, die auf Datenverarbeitung gewartet wird (gibt Hinweise auf Engpässe bei der Datenträgergeschwindigkeit)
hi Zeit, die auf das Bearbeiten von Hardware Interrupts verwendet wird
si Zeit, die auf das Bearbeiten von Software Interrupts verwendet wird
st stolen - Zeit, die von der laufenden Virtuellen Maschine vom Hypervisor für andere Aufgaben gestohlen wird (z.B. für andere VM)

Prozess-Zeile
AbkürzungBedeutung
PID Prozess-ID
USER Benutzer, der den Prozess gestartet hat
PR Prioritätsscheduling, z.B. rt für Real Time (irreführend, da der Linux-Kernel standardmäßig nicht in Echtzeit läuft)
NI Nice
VIRT virtual - alle Code-, Daten- und Shared Libraries plus Seiten im Swap und Seiten, die verplant aber noch nicht genutzt werden
RES reserved - der nicht-ge"swap"te physikalische Arbeitsspeicher
SHR shared - Speicher (auch Swap) der mit anderen Prozessen geteilt werden könnte
S Status (D = ununterbrechbarer Schlaf, R = läuft, S = schläft, T = mit ´´trace´´ auf Fehlersuche oder gestoppt, Z = Zombie)
%CPU Prozentzahl der abgelaufenen CPU-Zeit, die der Prozess verwendet hat
%MEM Memory - verwendeter Teil des verfügbaren physikalischen Arbeitsspeichers
TIME+ CPU-Zeit, die der Prozess benutzt hat (das + steht für hundertstel Sekunden)
COMMAND Befehlsname oder -zeile