Linux Watch: Überwachung von Systemen und Prozessen in Echtzeit

Foto des Autors

By Jan

Was ist ‚linux watch‘?

‚Linux watch‘ ist eine leistungsfähige Befehlszeilen-Anwendung, die Echtzeitüberwachung von Systemen und Prozessen in Linux-basierten Systemen ermöglicht. Es ist ein interaktives Werkzeug, das es dir erlaubt, Systemmetriken, Prozessinformationen und andere relevante Daten in Echtzeit zu beobachten.

Funktionen und Vorteile

  • Echtzeitüberwachung: Zeige laufend aktualisierte Daten über Systemressourcen, Prozesse und benutzerdefinierte Befehle an.
  • Interaktive Anzeige: Erlaubt dir, zwischen verschiedenen Ansichten zu wechseln, Spalten zu sortieren und Filter anzuwenden, um sich auf die benötigten Daten zu fokussieren.
  • Vielseitiges Monitoring: Überwache eine breite Palette von Systemressourcen wie CPU-Auslastung, Speichernutzung, Netzwerkverkehr und Festplattenaktivität.
  • Prozessüberwachung: Beobachte den Status, die CPU-Auslastung und den Speicherverbrauch von laufenden Prozessen.
  • Erweiterte Optionen: Personalisiere die Anzeige, führe Befehle aus oder erstelle Skripte, um die Überwachungsfunktionen zu erweitern.

Wie installiere ich ‚linux watch‘?

Voraussetzungen:

  • Ein Linux-System mit Root-Rechten oder Administratorzugriff.

Installation von ‚watch‘ unter Debian-basierten Distributionen (z. B. Ubuntu, Mint):

sudo apt install watch

Installation von ‚watch‘ unter RPM-basierten Distributionen (z. B. CentOS, Red Hat):

sudo yum install procps-ng

Installation von ‚watch‘ aus den Quellen:

  1. Lade den Quellcode herunter:
wget https://procps-ng.github.io/procps-ng/download/procps-ng-3.3.16.tar.xz
  1. Entpacke den Quellcode:
tar -xvf procps-ng-3.3.16.tar.xz
  1. Wechsle in das Verzeichnis:
cd procps-ng-3.3.16
  1. Konfiguriere und kompiliere:
./configure
make
  1. Installiere als Root-Benutzer:
sudo make install

Überprüfen der Installation:

Führe den folgenden Befehl aus, um die Installation zu überprüfen:

watch --version

Du solltest die Versionsinformationen von ‚watch‘ sehen.

Verwendung von linux watch

Nachdem du linux watch installiert hast, kannst du damit beginnen, Systemressourcen und Prozesse in Echtzeit zu überwachen. Hier sind einige der häufigsten Befehle, die du verwenden kannst:

Überwachung von Systemressourcen

  • Überwachung der Auslastung: watch uptime zeigt die Gesamtbetriebszeit des Systems, die Anzahl der angemeldeten Benutzer und die durchschnittliche Last.
  • Überwachung des Arbeitsspeichers: watch free -h zeigt die verfügbare, verwendete und freie RAM-Menge an.
  • Überwachung des Dateisystems: watch df -h zeigt den belegten und freien Speicherplatz auf den verschiedenen Dateisystemen an.
  • Überwachung des Netzwerkverkehrs: watch netstat -s zeigt Statistiken zum Netzwerkverkehr an, einschließlich der Anzahl der gesendeten und empfangenen Pakete.

Überwachung von Prozessen

  • Anzeigen laufender Prozesse: watch ps aux zeigt eine Liste aller laufenden Prozesse an, einschließlich ihrer Prozess-IDs (PIDs), Benutzernamen und Befehlszeilenargumente.
  • Überwachung eines bestimmten Prozesses: watch ps -p [PID] überwacht einen bestimmten Prozess anhand seiner PID.
  • Überwachung der Prozessauslastung: watch top zeigt eine Echtzeitansicht der Ressourcennutzung durch laufende Prozesse an.

Anpassung der Anzeige in linux watch

Du kannst die Anzeige in linux watch anpassen, indem du die folgenden Optionen verwendest:

  • Erneuerungsintervall: -n [Sekunden] legt das Intervall fest, in dem die Anzeige aktualisiert wird.
  • Header: -H fügt jeder Anzeige eine Kopfzeile hinzu.
  • Ausrichtung: -t richtet die Anzeige rechts aus.
  • Farbgebung: --color aktiviert die Farbgebung der Anzeige.

Überwachung von Systemressourcen

Mit linux watch kannst du eine Vielzahl von Systemressourcen in Echtzeit überwachen, um den Zustand deines Systems zu ermitteln und potenzielle Probleme zu identifizieren.

Überwachung der Speichernutzung

Verwende den Befehl watch free -m (oder watch grep MemTotal /proc/meminfo), um die Speichernutzung zu überwachen. Dies zeigt dir die Gesamtmenge des verfügbaren Speichers, des verwendeten Speichers und des freien Speichers in Megabyte an.

Überwachung der CPU-Auslastung

Verwende den Befehl watch top -b -n 1, um die CPU-Auslastung zu überwachen. Dies zeigt dir eine dynamische Liste der am meisten CPU-intensiven Prozesse an, zusammen mit ihren PID, dem Benutzer, der sie ausführt, und ihrer CPU-Auslastung.

Überwachung der Festplattennutzung

Verwende den Befehl watch df -h, um die Festplattennutzung zu überwachen. Dies zeigt dir eine Liste deiner Festplattenpartitionen mit Informationen zu ihrer Gesamtgröße, ihrem verwendeten und freien Speicherplatz.

Überwachung der Netzwerknutzung

Verwende den Befehl watch netstat -i, um die Netzwerknutzung zu überwachen. Dies zeigt dir eine Liste deiner Netzwerkschnittstellen mit Informationen zu ihrem eingehenden und ausgehenden Datenverkehr.

Integrierte Überwachungstools

Denke daran, dass Linux-Distributionen oft auch integrierte Überwachungstools bieten, wie z. B. htop oder dstat. Diese Tools können eine umfassendere Überwachungserfahrung bieten, die zusätzliche Informationen und eine benutzerfreundlichere Oberfläche bereitstellt.

Überwachung von Prozessen

Neben dem Überwachen von Systemressourcen kannst du auch einzelne Prozesse mit linux watch im Auge behalten. Das kann dir dabei helfen, die Leistung spezifischer Anwendungen oder Dienste zu überwachen und Probleme frühzeitig zu erkennen.

Überwachung eines einzelnen Prozesses

Um einen einzelnen Prozess zu überwachen, gibst du den Befehl watch zusammen mit dem Befehl oder dem Namen des Prozesses ein, den du überwachen möchtest. Beispielsweise kannst du mit dem folgenden Befehl die CPU-Auslastung des firefox-Prozesses überwachen:

watch ps -p $(pgrep firefox) -o pid,user,%cpu,args

Überwachung mehrerer Prozesse

Du kannst auch mehrere Prozesse gleichzeitig überwachen, indem du einen regulären Ausdruck verwendest, der allen zu überwachenden Prozessnamen entspricht. Dazu verwendest du die Option -d. Beispielsweise kannst du mit dem folgenden Befehl alle Prozesse überwachen, deren Name mit "python" beginnt:

watch -d ps -u username -o pid,user,%cpu,args | grep python

Zusätzliche Optionen für die Überwachung von Prozessen

linux watch bietet eine Reihe zusätzlicher Optionen, die dir bei der Überwachung von Prozessen helfen können:

  • -n: Legt das Aktualisierungsintervall für die Anzeige in Sekunden fest.
  • --no-headers: Unterdrückt das Anzeigen der Kopfzeilen in der Ausgabe.
  • --pid-file: Gibt eine Textdatei an, die die PIDs der zu überwachenden Prozesse enthält.
  • --user: Filtert die Anzeige nach Prozessen, die einem bestimmten Benutzer gehören.

Anpassung der Anzeige in ‚linux watch‘

Wenn du die Anzeige von ‚linux watch‘ an deine Vorlieben anpassen möchtest, kannst du zahlreiche Optionen verwenden. Hier sind einige der Möglichkeiten, die Darstellung deinen Bedürfnissen entsprechend zu optimieren:

Änderung der Aktualisierungsrate

Die Aktualisierungsrate bestimmt, wie oft ‚linux watch‘ die angezeigten Informationen aktualisiert. Du kannst sie mit der Option -n festlegen. Beispielsweise aktualisiert watch -n 5 top die Anzeige alle 5 Sekunden.

Auswahl der anzuzeigenden Informationen

Standardmäßig zeigt ‚linux watch‘ eine begrenzte Anzahl von Systeminformationen an. Du kannst jedoch mit der Option -d festlegen, welche Informationen angezeigt werden sollen. Beispielsweise zeigt watch -d 'load cpu mem' die CPU-Last, die CPU-Auslastung und die Speichernutzung an.

Begrenzung der Anzahl der angezeigten Zeilen

Wenn du eine lange Liste von Informationen anzeigst, kannst du die Option -c verwenden, um die Anzahl der angezeigten Zeilen zu begrenzen. Dadurch wird der Fokus auf die wichtigsten Daten gelenkt. Beispielsweise zeigt watch -c 10 top die letzten 10 Zeilen der Ausgabe von top an.

Verwendung von Farben

Du kannst ‚linux watch‘ anweisen, Farben zu verwenden, um die Anzeige zu verbessern. Aktiviere diese Funktion mit der Option --color. Dadurch werden bunte Balken und Diagramme verwendet, um Daten zu visualisieren.

Dekoration der Anzeige

‚linux watch‘ bietet mehrere Möglichkeiten, die Anzeige zu dekorieren, beispielsweise Rahmen und Titel. Um einen Rahmen hinzuzufügen, verwende die Option -t. Um einen Titel festzulegen, verwende die Option --title.

Anpassung von Tabellenspalten

Wenn du Tabelleninformationen wie die Ausgabe von ps anzeigst, kannst du mit ‚linux watch‘ Spalten hinzufügen oder entfernen. Verwende die Option --separate-lines oder -S, um jede Spalte auf eine separate Zeile zu bringen. Dies erleichtert das Lesen und Vergleichen von Daten.

Durch die Anpassung der Anzeige in ‚linux watch‘ kannst du die Überwachungsinformationen an deine spezifischen Bedürfnisse anpassen und so ein umfassendes und verständliches Bild der Systemleistung erhalten.

Beispiele für die Verwendung von ‚linux watch‘

‚linux watch‘ bietet unendlich viele Möglichkeiten, Systemressourcen und Prozesse in Echtzeit zu überwachen. Im Folgenden findest du einige praktische Anwendungsfälle:

Verfolgung der Systemlast

Du kannst die Systemlast mit diesem Befehl überwachen:

watch -d uptime

Dieser Befehl zeigt die Gesamtlast, die Last des letzten Minutenmittels und die Last des letzten 5-Minutenmittels an. Die Option -d aktualisiert die Anzeige kontinuierlich.

Überwachung des CPU-Verbrauchs

Um den CPU-Verbrauch zu überwachen, kannst du diesen Befehl verwenden:

watch -d top -b -n 1

Der Befehl top sortiert Prozesse nach CPU-Auslastung und zeigt die obersten Prozesse an. Die Option -b deaktiviert die Batch-Modus-Ausgabe und -n 1 aktualisiert die Anzeige alle Sekunden.

Überwachung freier Speicher

Den freien Speicher kannst du mit folgendem Befehl überwachen:

watch -d free -m

Der Befehl free zeigt die Gesamtmenge an Arbeitsspeicher, den verwendeten Arbeitsspeicher und den freien Arbeitsspeicher an. Die Option -m zeigt die Ausgabe in Megabyte an.

Überwachung von Netzwerkaktivitäten

Zur Überwachung von Netzwerkaktivitäten kannst du den Befehl iftop verwenden:

watch -d iftop -i eth0

Dieser Befehl zeigt Echtzeitstatistiken über den Netzwerkverkehr auf der Schnittstelle eth0 an.

Überwachung ausgehender Verbindungen

Mit dem folgenden Befehl kannst du ausgehende Verbindungen überwachen:

watch -d netstat -ano | grep ESTABLISHED

Der Befehl netstat zeigt Netzwerkverbindungen an und die Option -ano zeigt alle Ports und Nummern an. Die Option grep ESTABLISHED filtert die Ausgabe, um nur Verbindungen anzuzeigen, die hergestellt wurden.

Verfolgung der Systemlast

Was ist Systemlast?

Die Systemlast ist ein Maß für die Auslastung deines Systems. Sie gibt an, wie viele Prozesse auf der CPU ausgeführt werden und wie lange sie darauf warten müssen, ausgeführt zu werden. Eine hohe Systemlast kann ein Zeichen dafür sein, dass dein System überlastet ist und Probleme auftreten.

Überwachung der Systemlast mit linux watch

Du kannst linux watch verwenden, um die Systemlast in Echtzeit zu überwachen. Gebe dazu den folgenden Befehl ein:

watch uptime

Dies zeigt dir die aktuelle Systemlast sowie die durchschnittliche Last über die letzten 1, 5 und 15 Minuten an.

Verfolgung der Systemlast im Zeitverlauf

Wenn du die Systemlast im Zeitverlauf verfolgen möchtest, kannst du den folgenden Befehl verwenden:

watch -d uptime

Dies zeigt dir die Systemlast in Echtzeit sowie ein Diagramm, das die Systemlast im Zeitverlauf anzeigt.

Erkennen von Problemen mit der Systemlast

Wenn du feststellst, dass die Systemlast deines Systems hoch ist, kann dies ein Zeichen dafür sein, dass ein Problem vorliegt. Mögliche Ursachen sind:

  • Zu viele laufende Prozesse
  • Prozesse, die zu viel CPU-Zeit verbrauchen
  • Fehlende Arbeitsspeicher
  • Langsame oder überlastete Festplatten

Wenn du feststellst, dass die Systemlast deines Systems hoch ist, solltest du die laufenden Prozesse untersuchen und nach Prozessen suchen, die zu viel CPU-Zeit verbrauchen. Du solltest außerdem den Arbeitsspeicher- und Festplattennutzungsgrad überwachen, um sicherzustellen, dass diese nicht erschöpft sind.

Überwachung des CPU-Verbrauchs

Um den CPU-Verbrauch zu überwachen, kannst du den folgenden Befehl verwenden:

watch -d cat /proc/stat

Dieser Befehl aktualisiert die angezeigten Informationen alle zwei Sekunden. Du kannst die Aktualisierungsrate durch Angabe des Arguments -n anpassen, gefolgt von der gewünschten Anzahl von Sekunden:

watch -n 5 cat /proc/stat

Der Befehl cat liest die Datei /proc/stat, die Informationen über die CPU-Nutzung enthält. Die erste Zeile der Ausgabe enthält eine Zusammenfassung der CPU-Nutzung, wobei die einzelnen Spalten Folgendes angeben:

  • user: Zeit in Sekunden, in der die CPU für Benutzerprozesse aufgewendet wurde
  • nice: Zeit in Sekunden, in der die CPU für Prozesse mit niedriger Priorität aufgewendet wurde
  • system: Zeit in Sekunden, in der die CPU für Kernel-Prozesse aufgewendet wurde
  • idle: Zeit in Sekunden, in der die CPU inaktiv war
  • iowait: Zeit in Sekunden, in der die CPU auf E/A-Vorgänge wartete
  • irq: Zeit in Sekunden, in der die CPU Interrupts bearbeitete
  • softirq: Zeit in Sekunden, in der die CPU Software-Interrupts bearbeitete

Du kannst diese Informationen verwenden, um den Gesamtsystem-CPU-Verbrauch sowie die Nutzung durch verschiedene Kategorien von Prozessen zu analysieren. Wenn du beispielsweise feststellst, dass der Wert für user hoch ist, bedeutet dies, dass ein oder mehrere Benutzerprozesse einen Großteil der CPU-Ressourcen beanspruchen.

Fehlerbehebung bei ‚linux watch‘

‚linux watch‘ wird nicht ausgeführt

  • Prüfe deine Installation: Vergewissere dich, dass ‚linux watch‘ korrekt installiert ist und dass du über die erforderlichen Berechtigungen verfügst.
  • Überprüfe die Syntax: Stelle sicher, dass du die Syntax korrekt eingegeben hast. Verwende die Option --help, um die richtige Syntax anzuzeigen.
  • Aktualisiere das Paket: Versuche, die neueste Version von ‚linux watch‘ zu installieren. Möglicherweise behebt ein Update das Problem.

Die Anzeige ist fehlerhaft

  • Prüfe die Terminalgröße: Stelle sicher, dass dein Terminal groß genug ist, um die Ausgabe von ‚linux watch‘ anzuzeigen. Verwende die Option --resize oder --auto-resize, um die Größe der Ausgabe automatisch anzupassen.
  • Überprüfe die Farben: Wenn die Farben in der Ausgabe falsch sind, versuche die Option --color mit einem anderen Wert zu verwenden (z. B. --color=never, --color=always).
  • Verwende einen anderen Textprozessor: Probiere einen anderen Textprozessor wie more oder less zu verwenden, um die Ausgabe zu betrachten. Dies kann helfen, Probleme mit der Terminalunterstützung zu beheben.

‚linux watch‘ friert ein

  • Überprüfe den Befehl: Vergewissere dich, dass der Befehl, den du überwachst, ordnungsgemäß ausgeführt wird. Ein frierender Befehl kann ‚linux watch‘ zum Einfrieren bringen.
  • Reduziere die Aktualisierungsrate: Verwende die Option --interval, um die Aktualisierungsrate zu erhöhen. Dies kann das Einfrieren reduzieren, wenn der überwachte Befehl langsam ist.
  • Verwende die Option --tail-lines: Diese Option begrenzt die Anzahl der anzuzeigenden Zeilen, was das Einfrieren in ressourcenintensiven Umgebungen verringern kann.

Weitere Tipps zur Fehlerbehebung

  • Konsultiere die ‚linux watch‘ Dokumentation für weitere Fehlerbehebungstipps.
  • Suche in Online-Foren oder Stack Overflow nach Lösungen für ähnliche Probleme.
  • Melde Fehler oder fordere Funktionen über das Issue-Repository von ‚linux watch‘ an.

Schreibe einen Kommentar