htop: Prozessverwaltung auf dem Terminal

Was ist htop?

htop ist ein interaktives Prozessverwaltungstool für Linux- und Unix-ähnliche Betriebssysteme. Im Gegensatz zu anderen beliebten Prozessverwaltungsprogrammen wie ‚top‘ bietet htop eine grafische Benutzeroberfläche (GUI), mit der du Prozesse in Echtzeit überwachen und verwalten kannst.

Funktionen von htop

htop verfügt über eine Reihe von Funktionen, die es zu einem unverzichtbaren Werkzeug für Systemadministratoren und fortgeschrittene Benutzer machen:

  • Prozessbaum-Ansicht: htop zeigt Prozesse als hierarchischen Baum an, der es dir ermöglicht, die Beziehung zwischen Prozessen und ihren untergeordneten Prozessen auf einfache Weise zu visualisieren.
  • Live-Systemressourcenüberwachung: htop überwacht wichtige Systemressourcen wie CPU-Auslastung, Arbeitsspeicherverwendung und I/O-Aktivität in Echtzeit.
  • Interaktive Prozessverwaltung: Du kannst Prozesse direkt in htop anhalten, fortsetzen, beenden und priorisieren.
  • Filterung und Sortierung: Du kannst die Liste der Prozesse filtern und sortieren, um bestimmte Prozesse oder Gruppen von Prozessen anzuzeigen.
  • Umfangreiche Konfigurationsmöglichkeiten: htop bietet eine breite Palette von Konfigurationsoptionen, mit denen du das Aussehen und Verhalten der Anwendung an deine Vorlieben anpassen kannst.

Wie installiere ich htop?

htop ist in den Software-Repositorys der meisten Linux-Distributionen verfügbar. Du kannst es mit den folgenden Paketen-Managern installieren:

Debian/Ubuntu

sudo apt install htop

Fedora/CentOS/Red Hat

sudo yum install htop

Arch Linux

sudo pacman -S htop

Andere Distributionen

Wenn htop nicht in den Standard-Repositorys deiner Distribution verfügbar ist, kannst du es aus den Quellen kompilieren. Besuche die offizielle htop-Website, um Anweisungen zur Installation aus den Quellen zu erhalten.

Sobald du htop installiert hast, kannst du es über das Terminal starten, indem du htop eingibst.

Grundlegende htop-Befehle

Sobald du htop installiert hast, kannst du es über die Eingabeaufforderung mit dem Befehl htop starten.

Navigieren und Auswählen von Prozessen

  • Pfeiltasten: Navigiere durch die Liste der Prozesse.
  • Leertaste: Wähle einen Prozess aus oder deselektiere ihn.
  • Eingabetaste: Öffne das Prozessmenü für einen ausgewählten Prozess.

Prozessinformationen anzeigen

  • F6: Zeige detaillierte Prozessinformationen an.
  • F7: Zeige eine Baumansicht der Prozesshierarchie an.

Prozesse sortieren

  • F4: Sortiere Prozesse nach CPU-Auslastung.
  • F5: Sortiere Prozesse nach Speicherauslastung.
  • F8: Sortiere Prozesse nach Benutzer.

Prozesse filtern

  • F3: Öffne die Filterleiste.
  • Geben Sie einen Begriff ein: Filtere Prozesse, die dem Begriff entsprechen.

Systemressourcen überwachen

  • F1: Zeige eine Übersicht über die Systemressourcen an, darunter CPU-Auslastung, Speichernutzung und Swapping.
  • F2: Zeige eine grafische Darstellung der CPU-Auslastung an.

Prozesse beenden

  • F9: Beende einen ausgewählten Prozess.
  • Shift + F9: Beende einen ausgewählten Prozess, einschließlich seiner untergeordneten Prozesse.

Überwachung der Systemressourcen mit htop

htop bietet dir eine praktische Übersicht über die Nutzung deiner Systemressourcen.

CPU-Auslastung

Die CPU-Auslastung wird in der oberen linken Ecke des htop-Fensters angezeigt. Du siehst hier die Gesamt-CPU-Auslastung sowie die Auslastung pro Kern.

Speicherauslastung

Die Speicherauslastung wird als Balkendiagramm in der unteren linken Ecke des Fensters dargestellt. Du kannst die Auslastung des physischen und virtuellen Speichers sowie die Auslagerungsnutzung überwachen.

Auslastungsspeicher

Die Festplattenauslastung wird als Zeitdiagramm in der unteren rechten Ecke angezeigt. Du kannst die Lese- und Schreibaktivität für alle deine Festplatten oder Partitionen überwachen.

Netzwerkverkehr

Der Netzwerkverkehr wird in der oberen rechten Ecke des Fensters angezeigt. Du siehst hier die Gesamtmenge des ein- und ausgehenden Netzwerkverkehrs sowie die Statistiken für jede Netzwerkschnittstelle.

Überwachung der Ressourcenauslastung über Zeit

Mit htop kannst du die Ressourcenauslastung über Zeit überwachen, indem du das Echtzeitdiagramm aufrufst. Drücke dazu die Taste "F6" und wähle "Realtime Graph".

Anpassung der Ressourcenansicht

Du kannst die Ressourcenansicht in htop anpassen, indem du die Taste "F2" drückst und die gewünschten Ressourcen auswählst. So kannst du beispielsweise die Anzeige der Festplattenauslastung oder des Netzwerkverkehrs ausschalten.

Filterung und Sortierung von Prozessen in htop

htop bietet dir leistungsstarke Filter- und Sortieroptionen, mit denen du die angezeigten Prozesse schnell und einfach verfeinern kannst.

Filterung von Prozessen

Um Prozesse zu filtern, kannst du die Leertaste drücken und einen Suchbegriff eingeben. Es werden dann alle Prozesse angezeigt, die den Begriff im Namen, PID oder Befehl enthalten. Du kannst Platzhalter wie * oder ? verwenden, um deine Suche zu erweitern.

Sortierung von Prozessen

Du kannst Prozesse nach verschiedenen Kriterien sortieren, indem du auf die Spaltenüberschriften klickst. Ein Klick auf die Spalte "PID" sortiert die Prozesse beispielsweise nach ihrer Prozess-ID. Du kannst auch auf die Spalte "CPU%" klicken, um die Prozesse nach ihrer CPU-Auslastung zu sortieren.

Erweiterte Filterung und Sortierung

Für komplexere Filter- und Sortieranforderungen kannst du die Befehlsleiste von htop verwenden. Drücke die Taste F2 und gib einen Filterbefehl ein. Beispielsweise würde comm = bash alle Prozesse filtern, die den Befehl bash ausführen.

Um mehrere Filterbedingungen zu kombinieren, kannst du logische Operatoren wie AND und OR verwenden. Beispielsweise würde comm = bash AND user = root alle Prozesse filtern, die den Befehl bash ausführen und vom Benutzer root gestartet wurden.

Du kannst Prozesse auch nach mehreren Kriterien gleichzeitig sortieren. Beispielsweise würde sort_key cpu% DESC, mem% DESC die Prozesse zunächst nach ihrer CPU-Auslastung in absteigender Reihenfolge und dann nach ihrer Speicherauslastung in absteigender Reihenfolge sortieren.

Mit den Filter- und Sortieroptionen von htop kannst du die angezeigten Prozesse präzise verfeinern und so die Verwaltung deiner Systemressourcen effizienter gestalten.

Interaktion mit Prozessen in htop

htop bietet dir eine Vielzahl an Möglichkeiten, mit den aufgelisteten Prozessen zu interagieren.

Prozesse beenden

Um einen Prozess zu beenden, markiere ihn mit den Pfeiltasten und drücke die Taste F9. Du kannst auch die Funktion Tree Kill verwenden, um einen Prozess und alle seine Unterprozesse zu beenden, indem du F5 drückst.

Priorität von Prozessen ändern

Du kannst die Priorität eines Prozesses ändern, um seine CPU-Auslastung zu steuern. Markiere dazu den Prozess und drücke F7. Verwende die Pfeiltasten, um die Priorität einzustellen, und drücke Enter.

Prozesse verschieben

Du kannst Prozesse zwischen verschiedenen CPUs oder NUMA-Domains verschieben. Markiere dazu den Prozess und drücke F6. Verwende die Pfeiltasten, um das Ziel auszuwählen, und drücke Enter.

Prozesse anhalten und fortsetzen

Du kannst Prozesse anhalten und fortsetzen, indem du Space drückst. Ein angehaltener Prozess wird mit [stop] gekennzeichnet und kann mit Space fortgesetzt werden.

Threads anzeigen

Du kannst die Threads eines Prozesses anzeigen, indem du den Prozess markierst und F3 drückst. Die Threads werden in einer separaten Ansicht aufgelistet.

Prozesse suchen

Du kannst nach Prozessen suchen, indem du /? eingibst. Gib den Suchbegriff ein und drücke Enter. htop filtert die Prozessliste entsprechend deiner Suche.

Konfiguration von htop

htop ist ein konfigurierbares Tool, mit dem du seine Funktionen an deine Vorlieben anpassen kannst.

Allgemeine Einstellungen

Öffne die Konfigurationsdatei von htop mit deinem bevorzugten Texteditor:

sudo nano /etc/htop/htoprc

Hier kannst du allgemeine Einstellungen vornehmen, wie z. B.:

  • Farbthema: Ändere das Farbschema von htop mit TERM_COLOR
  • Anzeigeeinstellungen: Passe die Größe und Position der Anzeige mit WINDOW_SIZE und WINDOW_POSITION an
  • Updates: Lege das Aktualisierungsintervall mit REFRESH_DELAY fest

Spaltenanpassung

Du kannst die in htop angezeigten Spalten anpassen, indem du die METRIC-Einstellung bearbeitest. Jede Zeile in diesem Abschnitt entspricht einer Spalte. Du kannst vorhandene Spalten entfernen, neue hinzufügen oder die Reihenfolge ändern.

Tastaturbelegungen

Passe die Tastaturbelegungen für htop-Befehle mit der KEY_BINDINGS-Einstellung an. Dies ermöglicht dir, Befehle mit deinen bevorzugten Tastenkombinationen auszuführen.

Prozessfilter

Erstelle Prozessfilter mit der FILTER_STRING-Einstellung. Dadurch kannst du die in htop angezeigten Prozesse nach bestimmten Kriterien wie Name, PID oder Status filtern.

Erweiterte Konfigurationen

Zusätzliche Konfigurationsoptionen sind in der Datei /usr/share/doc/htop/README.Debian dokumentiert. Beispielsweise kannst du Skripte erstellen, die beim Start von htop ausgeführt werden, oder die Zeit zwischen den Aktualisierungen anpassen.

htop-Konfigurationstools

Du kannst htop auch über grafische Konfigurationstools wie ncursestop, einer nativen ncurses-Oberfläche, konfigurieren. Diese Tools bieten eine benutzerfreundlichere Möglichkeit, Einstellungen anzupassen.

Beheben allgemeiner htop-Fehler

Wenn du htop verwendest, kannst du auf gelegentliche Fehler stoßen. Hier sind einige häufig auftretende Probleme und ihre Lösungen:

Fehler: "htop: command not found"

Problem: htop ist nicht installiert oder nicht in deinem Pfad enthalten.

Lösung: Installiere htop mithilfe deines Paketmanagers (z. B. sudo apt install htop für Debian-basierte Systeme). Vergewissere dich, dass das Verzeichnis, in dem htop installiert ist, zu deinem PATH hinzugefügt wurde.

Fehler: "Permission denied"

Problem: Du hast keine ausreichenden Berechtigungen, um htop auszuführen.

Lösung: Starte htop mit "sudo" (z. B. sudo htop). Dies erfordert die Eingabe deines Administratorkennworts.

Fehlende Spalten

Problem: Einige Spalten in htop fehlen oder sind leer.

Lösung: Verwende die Taste "F2", um die Spaltenkonfiguration zu öffnen. Aktiviere die Spalten, die du anzeigen möchtest.

Hohe CPU-Auslastung durch htop

Problem: htop selbst verursacht eine hohe CPU-Auslastung.

Lösung: Verwende die Taste "F7", um die Aktualisierungsrate zu reduzieren. Eine niedrigere Aktualisierungsrate verringert die CPU-Belastung, kann aber die Reaktionsfähigkeit von htop beeinträchtigen.

Fehler: "Bad filter expression"

Problem: Du hast einen fehlerhaften Filterausdruck verwendet.

Lösung: Überprüfe den Filterausdruck auf Syntaxfehler. Die Filterung wird in htop mit dem Befehl "F6" aufgerufen.

Keine Prozesse angezeigt

Problem: htop zeigt keine Prozesse an.

Lösung: Vergewissere dich, dass du htop als root oder mit sudo ausführst, da es sonst möglicherweise nur eigene Prozesse anzeigt. Verwende den Befehl "F5", um Prozesse nach Benutzer zu filtern.

Erweitertes Prozessmanagement mit htop

Neben den grundlegenden Befehlen zur Prozessüberwachung bietet htop auch erweiterte Funktionen für fortgeschrittenes Prozessmanagement.

Priorisierung von Prozessen

Du kannst die Priorität von Prozessen ändern, um ihre Ausführungsreihenfolge zu beeinflussen. Dazu drückst du F7 und gibst dann die neue Priorität ein, gefolgt von der PID des Prozesses. Eine höhere Priorität (z. B. -20) führt dazu, dass der Prozess schneller ausgeführt wird, während eine niedrigere Priorität (z. B. 19) seine Ausführung verlangsamt.

CPU-Affinität festlegen

Du kannst die CPU-Affinität von Prozessen festlegen, um zu kontrollieren, auf welchen CPUs sie ausgeführt werden. Drücke F6, wähle den Prozess aus und gib dann die gewünschten CPUs ein, getrennt durch Kommas. Dies kann für Anwendungen nützlich sein, die eine hohe CPU-Auslastung haben und die Leistung anderer Anwendungen beeinträchtigen könnten.

Speicherauszüge erstellen

Du kannst Speicherauszüge von Prozessen erstellen, um deren Speicherverbrauch zu untersuchen. Drücke F2, wähle den Prozess aus und klicke dann auf "Speicherauszug erstellen". Der Auszug wird im .dmp-Format im aktuellen Verzeichnis gespeichert und kann mit Tools wie GDB analysiert werden.

Prozesse töten

Du kannst Prozesse mit htop auf verschiedene Arten beenden. Drücke F9 und wähle eine der folgenden Optionen:

  • Kill: Sendet ein SIGTERM-Signal an den Prozess.
  • Kill 9: Sendet ein SIGKILL-Signal an den Prozess, das ihn sofort beendet.
  • Renice: Ermöglicht dir, die Priorität des Prozesses zu ändern.
  • Nice -n: Reduziert die Priorität des Prozesses um die angegebene Zahl.
  • Nice +n: Erhöht die Priorität des Prozesses um die angegebene Zahl.

Prozesse anhalten und fortsetzen

Du kannst Prozesse mit F6 anhalten und mit F8 fortsetzen. Dies kann nützlich sein, um die Ausführung eines Prozesses vorübergehend zu stoppen, ohne ihn vollständig zu beenden.

Die Tree-Ansicht

Die Tree-Ansicht zeigt Prozesse in einer hierarchischen Ansicht, wobei übergeordnete Prozesse ihre untergeordneten Prozesse anzeigen. Dies kann hilfreich sein, um die Beziehungen zwischen Prozessen zu verstehen und zu identifizieren, welche Prozesse Ressourcenressourcen verbrauchen. Um die Tree-Ansicht aufzurufen, drücke F5.

Benutzerdefinierte Spalten hinzufügen

Du kannst benutzerdefinierte Spalten zu htop hinzufügen, um zusätzliche Informationen über Prozesse anzuzeigen. Drücke F3, wähle "Spalten" und klicke dann auf "Neue Spalte hinzufügen". Du kannst die folgenden Spaltentypen hinzufügen:

  • Messwert: Zeigt einen numerischen Wert an, z. B. CPU-Auslastung oder Arbeitsspeicherverbrauch.
  • Ausdruck: Erlaubt dir, benutzerdefinierte Ausdrücke zu definieren, z. B. um den Prozentsatz der CPU-Auslastung anzuzeigen.
  • Diagramm: Zeigt ein Diagramm an, z. B. CPU-Auslastung im Zeitverlauf.
  • Bibliothek: Importiert Spaltentypen aus einer externen Bibliothek.

Fazit

Mit htop steht dir ein leistungsstarkes Tool für die Prozessverwaltung auf dem Terminal zur Verfügung. Ob du die Systemressourcennutzung überwachen, Prozesse filtern und sortieren oder mit Prozessen interagieren möchtest, htop bietet dir die nötigen Funktionen und Informationen.

Was hat htop zu bieten?

  • Intuitive Benutzeroberfläche für schnelle Prozessübersicht
  • Detaillierte Informationen zu Prozessstatus, Ressourcenverbrauch und Abhängigkeiten
  • Leistungsstarke Filter- und Sortierfunktionen für eine einfache Prozessidentifizierung
  • Optionen zum Beenden, Neustarten und Bearbeiten von Prozessen
  • Anpassbare Konfiguration für eine maßgeschneiderte Benutzererfahrung

Wo kann ich mehr über htop erfahren?

Welchen Nutzen hat htop für mich?

  • Erhöhte Transparenz über Systemprozesse
  • Schnelle Fehlerbehebung bei Leistungsproblemen
  • Optimierung der Ressourcenzuweisung
  • Verbesserte Kontrolle über laufende Prozesse

Zusammenfassend lässt sich sagen, dass htop ein unverzichtbares Tool für jeden Linux-Benutzer ist, der seine Systemprozesse effektiv verwalten und überwachen möchte. Mit seiner benutzerfreundlichen Oberfläche und seinen umfassenden Funktionen ist htop ein wertvolles Hilfsmittel, das dir hilft, das Beste aus deinem System herauszuholen.