Top, der Klassiker zur Unix-Systemüberwachung, hat über die Jahre viele nützliche Ableger angeregt. Sie alle dienen der Überwachung und teilweise auch der Steuerung verschiedenster Vorgänge auf dem Rechner.
Das klassische Prozesssteuerungswerkzeug Top [1] (“Table of Processes”) liegt praktisch allen Linux-Distributionen und BSD-Derivaten bei. Nach dem Aufruf mittels top zeigt das Programm statistische Daten über die Auslastung des Systems und die Prozesse an (Abbildung 1). Das Programm führt nur so viele Prozesse auf, wie in das Terminalfenster passen. In der Voreinstellung aktualisiert es alle drei Sekunden die angezeigten Daten.
Schlauer Kopf
Im oberen Bereich über der Prozesstabelle erfahren Sie einiges über die Systemauslastung und -Nutzung. Neben der aktuellen Systemzeit erkennen Sie hier hinter up die Uptime, also die abgelaufene Zeit seit dem letzten Systemstart. Hinter users führt Top die Anzahl der Benutzer, die aktuell am System arbeiten. Dabei kann es sich um aktiv angemeldete Personen handeln, aber auch um Daemons.
Die drei Werte hinter load average visualisieren die CPU-Auslastung. Hier handelt es sich um eine relative Angabe zur Zahl der Prozesse, die sich durchschnittlich in der vergangenen Minute, den letzten fünf Minuten und der letzten Viertelstunde in der Verarbeitungsschlange der CPU befunden haben. Werte unter 1 zeigen, dass es Leerlaufzeiten (und damit Reserven) gab. Werte über 1 bedeuten hingegen Wartezeiten beim Abarbeiten der Prozesse.
Hinter Tasks führt Top eine Statistik über den Prozessstatus. Hier taucht neben der Gesamtzahl aller auch die Zahl der aktiven, schlafenden und angehaltenen Prozesse auf. Bei den sogenannten Zombies handelt es sich um Prozesse, die nach dem Beenden nicht aus der Prozesstabelle entfernt wurden.
Unter Cpu(s) notiert Top die prozentuale Verteilung der CPU-Zeit. Dabei unterscheidet es zwischen für Benutzer- und Systemprozessen (us, sy) sowie Nice-Prozessen (mit negativem Nice-Wert, ni). Außerdem sehen Sie hier die Leerlaufzeiten (id). Für Prozesse, die auf den Abschluss von Ein/Ausgabe-Operationen warten, finden Sie den CPU-Zeitanteil mit wa dargestellt. Die CPU-Zeitanteile für das Bereitstellen von Hardware-Interrupts zeigt hi, die der Software-Interrupts si. Prozesse können einer CPU auch Zeit stehlen (st) – hier erscheint bei virtuellen Maschinen der Zeitanteil, den der Hypervisor mit Beschlag belegt.
Über die Belegung des Arbeitsspeichers geben die Werte hinter Mem Aufschluss. Hier erscheinen der Gesamtumfang des RAMs (total), der aktuell verwendete Anteil (used), der noch freie Arbeitsspeicher (free) sowie der für Ein/Ausgabe-Operationen reservierte Anteil (buffers).
- Ganz ähnlich führt Top über den Auslagerungsspeicher (
Swap) Buch. Hier erscheinen der Gesamtumfang (total) sowie der benutzte (used) und freie (free) Anteil. Der Wert hintercachedzeigt die Belegung für zwischengespeicherte Daten an. Idealerweise liegt die Angabe zuusedbei Null oder nur wenig darüber – ansonsten herrscht auf dem System Arbeitsspeichermangel, was die Arbeit unweigerlich verlangsamt.
Voller Körper
Der untere Teil der Ausgabe von top listet Angaben zu den einzelnen Prozessen auf. Die Tabelle “Prozessinformationen” führt die standardmäßig dargestellten Informationen auf. Durch entsprechende Startoptionen oder interaktives Steuern können Sie zusätzliche weitere Angaben einblenden, wie beispielsweise den Elternprozess (PPID) oder die Gesamtspeicherbelegung des Jobs mit Programm, Daten und Stack (SIZE). Top – und auch seine verbesserte Nachahmer, dazu später mehr – lesen die Werte aus /proc aus.
Prozessinformationen
| Spalte | Information | Anmerkung |
|---|---|---|
PID |
Prozess-ID | – |
USER |
Eigentümer des Prozesses | Benutzername |
PR |
Priorität | maximal 0, minimal 139, 1-99 für Echtzeitaufgaben, ab 101 durch vorgegeben Nice-Wert berechnet |
NI |
Nice-Wert | maximal -20, minimal 19 |
VIRT |
verbrauchter virtueller Speicher | inklusive mehrfach verwendeter Programmbibliotheken) |
RES |
verbrauchter physischer Speicher | ohne ausgelagerte Daten |
SHR |
belegter geteilter Speicher | “shared memory” |
S |
Status des Prozesses | R = laufend, S = schlafend, D = nicht abbrechbar, T = angehalten |
%CPU |
CPU-Zeit | in Prozent |
%MEM |
RAM-Verbrauch | in Prozent |
TIME+ |
CPU-Zeit | in Minuten:Sekunden |
COMMAND |
Programmname | Name der ausgeführten Datei |
Neben einigen Optionen, die Sie Top beim Programmaufruf mitgeben, kennt Top auch eine Reihe interaktive Anweisungen. So zeigt Top beispielsweise nach einem Druck auf die Zifferntaste [**1**] eine eigene Statistik für jeden Prozessor beziehungsweise Core (Abbildung 2) und kennt auch einen (allerdings nicht eben übersichtlichen) ausführlichen Anzeigemodus (Abbildung 3).
Eine Auswahl dazu führt die der Tabelle “Top: Optionen und Steuerung” auf. Einige Funktionen lassen sich sowohl über Kommandozeilenschalter (Spalte “Befehlsoption”) als auch über interaktive Anweisungen (Spalte “Steuerung”) nutzen, andere nur direkt in der Oberfläche von Top. Zu letzteren gehört beispielsweise die Funktion zum Ändern der Priorität eines Prozesses, die analog zum Shell-Befehl renice arbeitet.
Dabei können normale Benutzer die Priorität eines Prozesses lediglich herabsetzen, nicht aber erhöhen. Wenn Sie also in Top [R] drücken, die PID des fraglichen Prozesses und anschließend einen Wert kleiner Null eingeben, verweigert Top die Ausführung: Nur root darf Prioritäten heraufsetzen.
Top: Optionen und Steuerung
| Anweisung | Befehlsoption | Steuerung |
|---|---|---|
| Statistik für jede CPU/Kern | – | [**1**] |
| Ausführliche Anzeige | – | [Umschalt]+[A] |
| Vollständige Anzeige Programmaufruf | -c |
[C] |
| Signal an einen Prozess senden | – | [K] PID |
| Zeige nur ausgewählte Prozesse | -p PID <...> |
– |
| Sicherer Modus (nur Anzeige) | -s |
– |
| Auffrischintervall | -d Sekunden |
[D] Sekunden oder [S] Sekunden (siehe Kasten “Besonderheiten von Top”) |
| Nur Jobs eines Benutzers zeigen | -u Benutzer |
[U] Benutzer |
| Einstellungen speichern | – | [Umschalt]+[W] |
| Anzeige farbig | – | [Z] |
| Top beenden | – | [Q] |
Vermeiden Sie, Top mit einem Auffrischintervall von weniger als einer halben Sekunde zu starten. Die Eingabe top -d 0 führt beispielsweise dazu, dass das Programm einen CPU-Kern für sich alleine beschlagnahmt und eine hohe Systemlast verursacht. Bei Delay-Werten ab 0.5 aufwärts geschieht das zwar nicht mehr, doch kann es auch dann noch schwierig sein, der hektisch springenden Anzeige zu folgen.
In einem zweistufigen Vorgang können Sie auch Signale an einen Prozess senden (Abbildung 4). Dazu Drücken Sie zunächst [K] und geben dann die PID des fraglichen Prozesses an, gefolgt von [Eingabe]. Drücken Sie nun nochmals die Eingabetaste, übermittelt Top dem Prozess das Signal 15 (SIGTERM). Daraufhin sollte er sich beenden. Klappt das, kann er noch Daten zurückschreiben, Lock-Dateien entfernen und Verbindungen abbauen.
Nicht jeder Prozess lässt sich jedoch so friedlich terminieren. In diesem Fall geben Sie nach der Angabe der PID noch eine 9 für das Signal SIGKILL ein. Nun beendet das System den Prozess ohne Rücksicht auf Verluste sofort. Übermitteln Sie einem Prozess dagegen das Signal 19 (SIGSTOP), wird nur dessen Ausführung angehalten. Er belegt weiterhin Ressourcen und erscheint in der Prozesstabelle von Top mit dem Status T.
Auf diese Weise halten Sie beispielsweise Prozesse an, die auf noch nicht vorliegende Daten warten. Auf die selbe Weise unterbrechen Sie auch einen Daemon, ohne dass Sie ihn später komplett neu starten müssten. Stattdessen senden Sie einem mit SIGSTOP angehaltenen Prozess das Signal 18 (SIGCONT), um ihn wieder fortzusetzen. Eine kleine Übersicht wichtiger Signale finden Sie in der Tabelle “Signale (Auswahl)”.
Signale (Auswahl)
| Signal | Name | Wirkung |
|---|---|---|
| 9 | SIGKILL |
Unbedingtes, sofortiges Beenden eines Prozesses |
| 15 | SIGTERM |
Normales Programmende anfordern |
| 18 | SIGCONT |
Fortsetzen eines angehaltenen Prozesses |
| 19 | SIGSTOP |
Anhalten eines Prozesses |
Top kennt auch einen sicheren Modus, den Sie durch den Aufruf mit dem Kommandozeilenschalter -s starten. Sie dürfen dann zwar noch die Anzeigeeinstellungen modifizieren, jedoch keinerlei Veränderungen am Status von Prozessen vornehmen.
Alle Einstellungen einer nach Ihren Wünschen laufenden Top-Instanz speichern Sie durch einen Druck auf [Umschalt]+[W]. Beim nächsten Aufruf läuft der Prozessmonitor wieder in der entsprechenden Konfiguration, die er aus der Datei ~/.toprc einliest.
Gedächtniskünstler Atop
Über die Fähigkeiten von Top zur laufenden Darstellung von Systemlast und Prozessen hinaus beherrscht atop [2] auch das Protokollieren der entsprechenden Daten. Damit bietet das Werkzeug die Möglichkeit, Programm- und Lastprüfungen auf einem System beispielsweise über Nacht laufen zu lassen und später auszuwerten.
Dazu dient auch der Aufruf als Daemon: Beim Einrichten des Programms, das sich in den Repositories aller gängigen Distributionen findet, bindet der jeweilige Paketmanager Atop gleich mit in den Systemstartvorgang ein. Darüber hinaus berücksichtigt Atop anders als Top auch die Auslastung von Festplatten und Netzwerkschnittstellen.
Atop: Besonderheiten
Um alle Funktionen von Atop nutzen zu können, müssen Sie die Kernelpatches cnt und acct installieren. Debian bietet diese beim Installieren von Atop gleich mit an.
Abbildung 5 zeigt die Ausgabe des Programms nach dem Aufruf. Im Terminal verwendet Atop eine feste Zeilenbreite von 80 Zeichen. In der oberen Hälfte stellt das Tool die Auslastung der einzelnen Systemkomponenten dar. Neben der CPU erscheinen hier auch der Arbeits- und Auslagerungsspeicher sowie das Netzwerk. Die CPUs beziehungsweise Cores führt Atop grundsätzlich einzeln auf.
Erreichen die Werte bei PRC (Prozessorlast), NET (Netzwerkauslastung) oder MEM (Arbeitsspeicher) 90 Prozent, bei DSK (Festplatte) 70 Prozent oder bei SWP (Auslagerungspeicher) 80 Prozent, zeigt Atop diese Werte farbig an und kennzeichnet sie damit als kritisch. Die einzelnen Prozesse erscheinen im unteren Teil der Anzeige in mehreren Spalten.
PID steht hier für die ID-Nummer des Prozesses, SYSCPU für die durch Systemaufrufe und USRCPU für die durch den Programmcode selbst verbrauchte CPU-Zeit.
VGROW zeigt den während des zurückliegenden Messintervalls belegten virtuellen Speicher, RGROW den belegten physischen Speicher. RDDSK enthält (abhängig vom verwendeten Kernel) die Zahl der Lesezugriffe auf die Platte oder die Menge der gelesenen Daten. Analog verweist WRDSK auf die Anzahl der physikalischen Schreibzugriffe beziehungsweise die Menge der geschriebenen Daten.
In der Spalte ST findet sich der Prozessstatus. Hier steht N für einen neuen Prozess (innerhalb des zurückliegenden Messintervalls), E für einen beendeten Prozess. Bei Letzterem besagt S, dass er durch ein Signal beendet wurde. Ein C bedeutet, dass der Prozess durch ein Signal beendet wurde und zudem einen Core-Dump abgelegt hat. Bei beendeten Prozessen verweist EXC zudem auf den Exit-Code bei Prozessende.
Den Prozessstatus finden Sie in der Spalte S: Hier stehen R für laufend und S für schlafend. D kennzeichnet einen nicht unterbrechbaren Prozess, Z einen Zombie. Angehaltene Prozesse erkennen Sie an einem T, gerade auslagernde an einem W. Ein mit E markierter Prozess wurde während des letzten Messintervalls beendet.
In den letzten beiden Spalten führt Atop den relativen Anteil des Prozesses an der Prozessorlast (CPU) sowie den zugehörigen Programmnamen (CMD) auf.
Was genau Atop auf welche Weise anzeigen soll, bestimmen Sie bei Bedarf beim Programmstart über Optionen. Daneben steuern Sie das Programm zur Laufzeit mit einigen Tastendrücken. Die Tabelle “Atop: Optionen und Steuerung” zeigt die wichtigsten Möglichkeiten auf.
Atop: Optionen und Steuerung
| Anweisung | Befehlsoption | Steuerung |
|---|---|---|
| Daten aller Prozesse anzeigen | -a |
[A] |
| Rückwärts in Prozessliste blättern | – | [Strg]+[B] |
| Anzeige des Kommandoaufrufes | -c |
[C] |
| Plattenzugriffsbezogene Daten | -d |
[D] |
| Vorwärts in Prozessliste blättern: | – | [Strg]+[F] |
| Standard-Informationsanzeige | -g |
[G] |
| Prozess beenden | – | [K] |
| Netzwerkauslastung (kernelabhängig) | -n |
[N] |
| Daten nach Programmnamen zusammenfassen | -p |
[P] |
| Lesen aus Datei | -r Datei |
– |
| Daten nach Benutzer zusammenfassen | -u |
[U] |
| Ausführliche Anzeige | -v |
[V] |
| Log in Datei speichern | -w Datei |
– |
| Atop beenden | – | [Q] |
Soll Atop die Anzeige alle drei Sekunden auffrischen, rufen Sie es mit atop 3 auf. Möchten Sie eine Minute lang alle 20 Sekunden einen Schnappschuss des Systemzustandes in eine Datei speichern, verwenden Sie den Aufruf
$ atop -w Datei 60 3<C>.
Mit atop -r Datei lesen Sie eine solche Log-Datei zum Auswerten wieder ein. Alle Voreinstellungen für Atop können Sie in der Konfigurationsdatei ~/.atoprc) hinterlegen. Sie bestimmen darin die kritischen Grenzen für die Werteanzeige in der Warnfarbe, die Häufigkeit der Messungen und die Aufrufoptionen. Genaue Erklärungen finden Sie in der Manpage des Programms.
Übersichtliches Htop
Recht übersichtlich und gleichzeitig komfortabel wirkt die Oberfläche von htop [3]: Das Tool stellt die Auslastung der CPUs, des Arbeits- und des Auslagerungsspeichers numerisch und mit einem farbigen Balken dar. Die Startoptionen fallen mehr als übersichtlich aus: Mit dem Aufruf
$ htop -d Zehntelsekunden
bestimmen Sie das Auffrischintervall für die Anzeige, und wenn Sie die Prozesse nur eines bestimmten Benutzers sehen möchten, verwenden Sie den Schalter -u Benutzer.
Hinsichtlich der Anzeige des Systemzustandes gibt sich Htop recht wortkarg und zeigt lediglich die Anzahl der Tasks, die Uptime und die durchschnittliche CPU-Auslastung an (Abbildung 6). Dafür bietet das Programm einigen Komfort bei der Prozesssteuerung. Die einzelnen Prozesse führt Htop in der Grundeinstellung in einer Baumansicht auf.

Abbildung 6: Übersichtlich und komfortabel: Htop lässt sich weitgehend über die Cursor- und Funktionstasten bedienen.
Über die Funktionstasten [F1] bis [F10] steuern Sie das Programm. Ein Druck auf [F1] fördert eine kurze Hilfe zutage. [F2] führt in ein Konfigurationsmenü, in dem Sie beispielsweise bei Bedarf die vorgegebene Ansicht um weitere Felder ergänzen. Beim Verlassen durch Drücken von [F10] notiert Htop die Einstellungen automatisch in seiner Konfigurationsdatei ~/.htoprc.
TIPP
Manche Terminals behandeln Funktionstasten auf ihre Weise: So werten Gnome-terminal und Lxterminal [F10] als Menüaufruf aus. Das lässt sich aber bei beiden über die Einstellungen ändern. Sollte sich das von Ihnen verwendete Terminalprogramm ebenso verhalten, aber nicht umkonfigurieren, beenden Sie Htop alternativ mit [Q].
Das Beenden eines Prozesses geschieht wie bei den anderen Top-Varianten zweistufig: Bei Htop springen Sie mit den Pfeiltasten in die betreffende Listenzeile und drücken die Taste [F9] oder alternativ [K] (Abbildung 7). Anschließend wählen Sie in der linken Spalte das an den Prozess zu sendende Signal aus (Abbildung 8). Analog bietet das Programm in vielen Situationen Wertelisten für verschiedene Parameter an, was die Arbeit mit Htop äußerst bequem macht.
Neben den über die Funktionstasten erreichbaren Funktionen kennt Htop einige weitere für die tägliche Arbeit nützliche Tastaturkürzel für die Bedienung. Eine Übersicht dazu bietet die Tabelle “Htop: Tastenkürzel”.
Htop: Tastenkürzel
| Anweisung | Taste |
|---|---|
Anzeige offener Dateien eines Prozesses (benötigt lsof) |
[L] |
Verfolgen von Bibliotheksaufrufen (benötigt ltrace) |
[Umschalt]+[L] |
| Prozesse nach Speicherverbrauch sortieren | [Umschalt]+[M] |
| Prozesse nach CPU-Last sortieren | [Umschalt]+[P] |
Verfolgen von Systemaufrufen (benötigt strace) |
[S] |
| Prozesse nach kumulierter Zeit sortieren | [Umschalt]+[T] |
| Anzeige auf einen Benutzer eingrenzen | [U] |
| Htop beenden | [Q] |
Sntop überwacht Hosts
Möchten Sie wissen, ob bestimmte Gegenstellen im Netzwerk noch erreichbar sind, setzen Sie dazu sntop [4] ein, das die gewünschten Informationen knapp und übersichtlich auf den Bildschirm bringt (Abbildung 9).
Welche Hosts das Werkzeug überwachen soll, das tragen Sie in die Konfigurationsdatei ~/.sntoprc ein. Die Konfigurationsangaben folgen einem simplen Schema: Für jeden zu überwachenden Host geben Sie einen dreizeiligen Block aus Anzeigename, IP-Adresse oder Hostname sowie einem Kommentar an, gefolgt von einer Leerzeile (Listing 1). Sie dürfen mehrere Konfigurationsdateien anlegen, das Programm lässt sich aber nur jeweils mit einer davon aufrufen (siehe Tabelle “Sntop: Wichtige Optionen).
Listing 1
Router # Name für Anzeige
192.168.0.1 # IP oder Hostname
Router und Gateway # Beschreibung
# Leerzeile zwingend!
Laserdrucker
lp
Kyocera FS-1370DN
NAS
192.168.0.55
NAS-Box
LinuxUser
www.linux-user.de
Webserver LinuxUser
Nach dem Start überwacht Sntop die angegebenen Hosts und frischt ohne weitere Angaben die Anzeige alle drei Minuten auf. Im interaktiven Modus beenden Sie das Programm mit [Q]. Haben Sie während der Laufzeit die Konfigurationsdatei geändert, drücken Sie [R], um diese neu zu laden. Um eine Ausgabe im HTML-Format in die Datei sntop.html zu schreiben, drücken Sie [W]. Jeder andere Tastendruck sorgt für ein vorzeitiges Auffrischen der Anzeige.
Über die Kommandozeilenschalter -a und -l bietet Sntop die Möglichkeit, auf Ausfälle und Statusänderungen der überwachten Hosts zu reagieren. Dabei kommt das hinter -a angegebene Skript zum Einsatz, sobald ein Host ausfällt. Dagegen führt Sntop ein hinter -l spezifiziertes Skript jedesmal aus, wenn sich der Status des Hosts ändert.
Daneben bietet Sntop die Option, bei jedem Auffrischen der Information zusätzlich zur Bildschirmanzeige auch eine HTML-Ausgabedatei zu erzeugen, welche die Informationen tabellarisch zusammenfasst. Dazu starten Sie das Programm mit dem Schalter -w beziehungsweise mit -e Datei, falls Sie eine andere Ausgabedatei als die vorgegebene sntop.html nutzen möchten.
Über eine Reihe weiterer Kommandozeilenschalter lässt sich das Verhalten von Sntop recht gezielt auf die eigenen Bedürfnisse anpassen. Die wichtigsten Optionen für den Programmstart finden Sie in der Tabelle sntop-Optionen (Auswahl), eine ausführliche Beschreibung bietet die Manpage von Sntop.
Sntop: Wichtige Optionen
| Option | Parameter |
|---|---|
| Alternative Konfigurationsdatei laden | -f Datei |
| Auffrischintervall der Anzeige | -r Sekunden |
| Sicherer, nicht interaktiver Modus | -s |
HTML-Ausgabedatei sntop.html erzeugen |
-w |
| Angabe einer alternativen HTML-Ausgabedatei | -e Datei |
| Bei Ausfall eines Hosts Skript ausführen | -a Skript |
| Bei Statusänderung eines Hosts Skript ausführen | -l Skript |
DNS-Helfer Dnstop
Sehr viele DNS-Abfragen deuten oft auf allgemeine Konfigurationsprobleme oder aktive Schadsoftware hin. Mit dnstop [5] kommen Sie solchen Problemen auf die Spur. Besonders interessant ist der Einsatz des Programms auf Rechnern, die selbst einen DNS-Server betreiben.
Abbildung 10 zeigt das laufende Programm mit eingeschalteter anonymisierter Darstellung der IP-Adresse. Ferner lauscht das Programm am Gerät eth0 und aktualisiert die Anzeige alle drei Sekunden. Der entsprechende Aufruf lautet:
# dnstop -a -r 3 eth0
Ohne die Option -a erscheint in der Ausgabe die volle IP-Adresse der Netzwerkkarte. Da Dnstop lesenden Zugriff auf das Netzwerkgerät benötigt, müssen Sie das Programm mit administrativen Rechten aufrufen. Die Tabelle “Dnstop: Wichtige Optionen” fasst die wichtigsten Kommandozeilenschalter für den Programmaufruf zusammen.
Dnstop: Wichtige Optionen
| Option | Parameter |
|---|---|
| Nur IPv4-Adressanfragen zählen | -4 |
| Nur IPv6-Adressanfragen zählen | -6 |
| Adressen anonymisieren | -a |
| Ausgewählte Adressen ignorieren | -i IP-Adresse |
| Auffrisch-Intervall festlegen | -r Sekunden |
Im interaktiven Modus liefert Dnstop auf Tastendruck verschiedene Auswertungen (siehe Tabelle “Dnstop interaktiv”). So können Sie beispielsweise zwischen Ziel- und Quelladressen wechseln und verschiedene Domain-Level abfragen, wie etwa den kompletten Domainnamen (Abbildung 11) oder nur die TLD (Abbildung 12). Das Programm beenden Sie – entgegen aller gängigen Linux-Gepflogenheiten – mit [Strg]+[X].
Dnstop interaktiv
| Aktion | Taste |
|---|---|
| Anzeige auffrischen | [Leer] |
| Zieladresse anzeigen (Abbildung 15) | [D] |
| Quelladresse anzeigen | [S] |
| Abfragetypen anzeigen | [T] |
| 1. Domain-Level (Abbildung 17) | [**1**] |
| 1. Domain-Level + Quelladresse (Abbildung 18) | [Umschalt]+[**1**] |
| 2. Domain-Level (Abbildung 16) | [**2**] |
| Sntop beenden | [Strg]+[X] |
PostgreSQL überwachen
Betreiben Sie eine Postgres-Datenbank, gibt es auch dafür ein passendes Top-Tool, das auf den Namen pg_top [6] hört. Es liefert eine Ausgabe, die jener des klassischen Top recht ähnlich sieht und die augenblickliche Beanspruchung mit Transaktionen und Queries anzeigt (Abbildung 13).

Abbildung 13: Mit Pg_top bleiben Sie stets über den Betriebsstatus eines PostgreSQL-Datenbankserver auf dem Laufenden.
Beim Start übergeben Sie Pg_top als Option die IP-Adresse oder den Hostnamen des Datenbank-Rechners. Das gilt auch dann, wenn das RDBMS auf dem selben Computer läuft, in diesem Falle lautet der Aufruf
$ pg_top -h localhost
Mit [Umschalt]+[Q] und der folgenden Eingabe der PID erhalten Sie detailliert Auskunft über einen Datenbankprozess. Sie beenden das Programm mit einem Druck auf [Q].
Fazit
Die kleinen Helferlein aus der Top-Riege helfen Ihnen vor allem dann weiter, wenn die Arbeit einmal zäh läuft. Mithilfe der kleinen Werkzeuge spüren Sie Ressourcenmängel und Überlastungen, schwache Hardware-Komponenten oder Konfigurationsmängel schnell auf und können sie gezielt beheben.
Infos
[1] Top: http://www.unixtop.org
[2] Atop: http://www.atoptool.nl
[3] Htop: http://htop.sourceforge.net
[4] Sntop: http://sntop.sourceforge.net
[5] Dnstop: http://dns.measurement-factory.com/tools/dnstop/
[6] Pg_top: http://ptop.projects.pgfoundry.org















