htop ist der UI-Upgrade von top: ein interaktiver Prozess-Monitor mit farbigen Balken für CPU und Speicher, Tree-View für Eltern-Kind-Beziehungen, Maus-Support und einem konfigurierbaren Setup. Wo top mit kryptischen Tastenkürzeln und kompakter ASCII-Ausgabe arbeitet, präsentiert htop dieselben Informationen aufgeräumt, sortierbar und filterbar — ohne dabei die Tiefe zu verlieren.

Was htop macht

htop ist ein interaktiver Prozess-Monitor für das Terminal. Er liest dieselben Quellen wie top (im Wesentlichen /proc) und zeigt CPU-Last, Speicher, Swap, Load Average und Prozessliste — aber mit deutlich besserer UX: farbcodierte Balken pro CPU-Kern, ein scrollbares Prozessfenster, Markieren mehrerer Prozesse, Tree-View für Hierarchien und ein Setup-Dialog, der Spalten und Meter konfigurierbar macht.

Wer schon einmal in top einen Prozess killen wollte, weiß, dass das die PID-Eingabe samt Signal-Nummer erfordert. In htop markierst du den Prozess mit den Pfeiltasten, drückst F9 und wählst das Signal aus einem Menü. Das gleiche gilt für Sortieren, Filtern und Renicen — alles ist einen Tastendruck oder Mausklick entfernt.

Bash htop starten
htop

Installation

Anders als top ist htop auf den meisten Distributionen nicht vorinstalliert, lässt sich aber über jeden Paketmanager mit einem Einzeiler nachrüsten.

Bash Installation auf gängigen Distributionen
# Debian, Ubuntu, Mint
sudo apt install htop

# Fedora, RHEL, Rocky
sudo dnf install htop

# Arch, Manjaro
sudo pacman -S htop

# macOS
brew install htop

Auf macOS lohnt sich der Hinweis, dass htop historisch ein Workaround für sudo brauchte, weil das System bestimmte Prozessdetails nur Root preisgibt. Aktuelle Versionen über Homebrew funktionieren in der Regel ohne Sonderbehandlung.

htop vs. top

htop ersetzt top nicht — es ergänzt es. Auf einem leeren Server ohne Internet ist top immer da, htop hingegen muss erst installiert werden. Die folgende Tabelle stellt die wichtigsten Unterschiede gegenüber.

Aspekttophtop
BedienungTasten-Kürzel, kryptischFunktions-Tasten, Menüs, Maus
FarbenSpärlich oder keineFarbcodierte Balken und Spalten
Tree-ViewEingeschränkt (V)Vollwertig mit t
Maus-SupportNeinJa, inkl. Funktionsleiste
Kill ohne PID-EingabeNein, PID muss getippt werdenJa, Markieren plus F9
Live-FilterNeinJa, \ filtert sofort
Setup-PersistenzÜber W in ~/.toprcÜber F2 in ~/.config/htop/htoprc
Memory-FootprintSehr kleinEtwas größer, aber unkritisch
VorinstalliertPraktisch immerSelten

top punktet vor allem durch Verfügbarkeit: auf einem Container, einer Embedded-Box oder einem fremden Server liegt es bereit, ohne dass man einen Paketmanager bemühen muss. Für die tägliche Arbeit auf der eigenen Workstation ist htop aber fast immer die bessere Wahl.

Tasten und Maus

Die wichtigsten Aktionen liegen auf den Funktionstasten F1 bis F10 — und sind unten in der Statusleiste sichtbar, sodass man sie auch per Maus klicken kann. Daneben gibt es ein paar Buchstaben-Shortcuts für häufige Aufgaben.

TasteWirkung
F1Hilfe-Übersicht
F2Setup (Spalten, Meter, Farben)
F3Suche im Command-Feld
F4Filter (zeigt nur passende Prozesse)
F5Tree-View umschalten
F6Sortier-Spalte wählen
F7 / F8Nice-Wert verringern bzw. erhöhen
F9Signal an markierten Prozess senden
F10Beenden
/Schnellsuche im Command-Feld
\Filter ein- und ausschalten
tTree-View toggeln
HUser-Threads ein- bzw. ausblenden
KKernel-Threads ein- bzw. ausblenden
uNach User filtern
SpaceProzess markieren (für Multi-Aktion)

Wer seine Hand an der Maus hat, kann die Funktionsleiste am unteren Rand direkt anklicken — ein Komfort, den top schlicht nicht bietet.

Setup (F2)

Das Herzstück der Anpassung ist der Setup-Dialog hinter F2. Vier Bereiche sind konfigurierbar: Meters im Kopfbereich (CPU-Bars, Memory, Swap, Load, Uptime, Hostname und mehr), Display Options für Verhalten und Highlights, Colors für das Farbschema und Columns für die Tabelle.

Besonders nützlich ist das Umschalten der CPU-Bar-Darstellung: statt eines Balkens pro Kern lässt sich ein Average-LoadGraph einblenden, der die Auslastung über die letzten Sekunden visualisiert. Auf vielen-Kernen-Systemen kann man die Cores in zwei Spalten aufteilen, sodass der Header kompakt bleibt. Alle Einstellungen werden in ~/.config/htop/htoprc als Plain-Text gespeichert und lassen sich versionieren oder zwischen Maschinen synchronisieren.

Bash Eigene htop-Konfiguration sichern
cp ~/.config/htop/htoprc ~/dotfiles/htoprc

Tree-View und Filter

Mit t schaltest du die hierarchische Anzeige ein: Prozesse werden unter ihren Parents eingerückt dargestellt. Damit erkennst du auf einen Blick, welcher Browser welche Renderer-Tabs gespawnt hat oder welche Shell welche Sub-Befehle laufen lässt.

Suche und Filter sind getrennt:

  • / startet eine Suche — die nächste passende Zeile wird hervorgehoben, der Rest bleibt sichtbar.
  • \ aktiviert einen Filter — nur passende Prozesse bleiben in der Liste, alles andere wird ausgeblendet.

Klassisches Beispiel: \firefox zeigt nur noch Firefox-Prozesse. Der Filter bleibt aktiv, bis du \ erneut drückst und das Eingabefeld leerst.

Bash htop nur mit eigenen Prozessen starten
htop -u $USER

Praxis-Patterns

Ein paar wiederkehrende Abläufe, die im Alltag den größten Hebel bringen.

Bash Nur eigene Prozesse anzeigen
htop -u $USER

Mit -u startet htop direkt mit dem Filter auf einen User. Praktisch auf Multi-User-Servern, wenn man nur die eigenen Jobs sehen will — ohne erst durch fremde Prozesse zu scrollen. Alternativ in laufender Sitzung: u drücken und User aus der Liste wählen.

Bash Multi-Kill mit Markierungen
# In htop: mit Pfeiltasten/Suche zu jedem Prozess gehen,
# Space drueckt eine Markierung. Dann F9 und Signal waehlen.

Space markiert einen Prozess gelb, weitere Markierungen sammeln sich. F9 sendet das gewählte Signal (z. B. SIGTERM oder SIGKILL) an alle markierten Prozesse auf einmal — ideal, wenn ein verklemmter Build mehrere Worker hinterlassen hat.

Bash Tree-Mode für Parent-Child-Übersicht
# In htop: Taste `t` druecken, danach mit F6 sortieren waehlen.

Im Tree-Mode siehst du sofort, welche Prozesse zusammengehören. Beim Debugging hilfreich, um zu erkennen, welche Shell ein Tool gestartet hat oder welche Daemon-Hierarchie hinter einem Service steckt. Sortieren funktioniert auch im Tree-Mode — dann wird innerhalb jeder Hierarchie-Ebene sortiert.

Bash Einzelnen Prozess beobachten
htop -p 12345

Mit -p schränkt man die Anzeige auf eine oder mehrere PIDs ein. Praktisch, wenn man gezielt Speicher-Wachstum oder CPU-Verbrauch eines bestimmten Prozesses verfolgen möchte, ohne dass die übrige Liste ablenkt.

Bash Sortier-Spalte wechseln
# In htop: F6 druecken, gewuenschte Spalte aus der Liste waehlen.

F6 öffnet ein Menü mit allen sichtbaren Spalten als Sortier-Optionen. Standardmäßig sortiert htop nach CPU-Verbrauch — über F6 kann man schnell auf MEM%, TIME+ oder PID umschalten, je nachdem wonach man gerade sucht.

Besonderheiten

Mehr Komfort als top auch ohne sudo

Ein verbreiteter Irrtum: Maus, Filter und Setup von htop brauchen keine Root-Rechte. Was Root nötig macht, sind nur Aktionen wie das Renicen oder Killen fremder Prozesse — alles, was auch top ohne Privilegien nicht dürfte. Die UI-Vorteile bekommt jeder normale User frei Haus.

Memory-Bar zeigt Buffer/Cache anders

Die grüne Memory-Bar in htop stellt benutzten RAM dar, blau steht für Buffer, gelb für Cache. Was Linux als „benutzt” meldet, schließt Cache mit ein — der ist aber jederzeit für Anwendungen verfügbar. Wer hier blind nach „99 % belegt” schaut, fällt darauf herein. Im Zweifel free -h zur Kontrolle nehmen.

htop -p für Single-PID-Watch

Mit htop -p PID1,PID2 lässt sich die Anzeige auf eine Liste konkreter PIDs reduzieren. Nützlich für Monitoring eines Service-Verbunds: man bekommt CPU- und Memory-Verlauf nur dieser Prozesse — mit allen Komfort-Features wie Sortieren und Markieren.

F9 öffnet ein Signal-Menü

Wo kill per Default SIGTERM sendet, zeigt htop mit F9 ein Menü mit allen verfügbaren Signalen — von SIGHUP über SIGTERM bis SIGKILL. Das ist nicht nur bequemer, sondern erinnert auch daran, dass es zwischen „bitte beenden” und „sofort abschießen” Abstufungen gibt.

Refresh-Rate mit -d feintunen

Der Parameter -d setzt den Refresh-Intervall in Zehntelsekunden — nicht Sekunden. htop -d 10 bedeutet 1 Sekunde, htop -d 5 0,5 Sekunden. Für Echtzeit-Beobachtung kurzer Spikes ist das hilfreich, kostet aber spürbar mehr CPU für htop selbst.

Über SSH manchmal hakelig

Das ncurses-Frontend von htop verlässt sich auf eine korrekt gesetzte TERM-Variable. Auf manchen SSH-Verbindungen mit exotischem Terminal-Emulator springt das Layout, Farben fehlen oder Funktionstasten kommen nicht durch. TERM=xterm-256color htop löst die meisten dieser Fälle.

htop liest mehr als nur /proc

top schöpft seine Daten praktisch ausschließlich aus /proc. htop nutzt zusätzliche Quellen wie libnl für Netzwerk-Counter und plattformspezifische APIs auf macOS und FreeBSD. Deshalb können einzelne Werte minimal von top abweichen — kein Bug, sondern eine andere Datenquelle.

Weiterführende Ressourcen

Externe Quellen

/ Weiter

Zurück zu Prozesse & Jobs

Zur Übersicht