1843069

Hardware und Systemressourcen unter Linux ermitteln

02.06.2017 | 15:04 Uhr |

Um einen Blick in den Maschinenraum zu werfen, muss man sich unter Linux nicht weit unter Deck begeben. Sowohl für den Desktop als auch für die Kommandozeile gibt es Tools, die Leistungsdaten akribisch anzeigen.

Wie steht es um die Systemauslastung, die Netzwerkschnittstelle und die Temperaturen von Prozessor und Chipsatz? Welche Hardware steckt überhaupt im System? Die Frage, wie ein System bestückt ist und wie es sich im rauen Alltag schlägt, ist nicht nur von theoretischem Interesse. Ein Blick auf die Hardware und deren Auslastung zeigt, wo eventuell ein Nadelöhr auftritt. Die Diagnoseprotokolle von Festplatten und die Systemtemperaturen lassen zudem eine Einschätzung der Systemgesundheit zu.

Viele der im Folgenden vorgestellten Werkzeuge für die Hardwarekontrolle sind für das Terminal (Kommandozeile) gemacht und liefern ausführliche Hardware-und Performancedaten im Textmodus. Das hat den Vorteil, dass die Programme auch auf Servern oder Mini-PCs wie dem Raspberry Pi funktionieren, die oft keine grafische Oberfläche nutzen und nur per SSH-Zugang auf der Kommandozeile verwaltet werden.

Die Systemüberwachung in Linux Mint und Ubuntu.
Vergrößern Die Systemüberwachung in Linux Mint und Ubuntu.

Desktop: Grafische Systemmonitore

Auf Desktopsystemen wie Ubuntu und Mint werden Sie die grafische „Systemüberwachung“ bevorzugen, um die Systemleistung zu kontrollieren oder Tasks zu beenden. Im Ausführen-Dialog startet Sie diesen mit dem Aufruf gnome-system-monitor, im Anwendungsmenü beziehungsweise in der Unity-Übersichtsseite ist das Programm unter dem Namen „Systemüberwachung“ zu finden.

Das Tool beherrscht in der Prozessliste nach Rechtsklick auf einen Prozess alle Aufgaben bis hin zur Prioritätsanpassung, sortiert nach der gewünschten Spalte, und zeigt nach Rechtsklick auf den Spaltenkopf auf Wunsch noch wesentlich mehr Spalten (wichtig etwa „CPU-Zeit“ oder „Befehlszeile“). Die Echtzeitüberwachung von CPU, Speicher und Netzwerk unter „Ressourcen“ ist ebenfalls vorbildlich. Eine Datenträgerübersicht gibt es unter „Dateisysteme“.

In Ubuntu Mate ist ein sehr ähnliches Tool unter „Systemwerkzeuge -> Mate-Systemüberwachung“ zu finden. Unter XFCE (Xubuntu) fällt dieser Monitor etwas schlichter aus und ist dort unter „System -> Taskmanager“ zu finden.

Lesetipp: Diese Ubuntu-Linux-Varianten gibt es: Server, Desktop, IoT

Shell: Auslastung beobachten

In der Kommandozeile ist der Klassiker unter den Systemmonitoren der Befehl top, welcher auf allen Linux-Systemen zur Verfügung steht. Das Werkzeug zeigt eine tabellarische Liste aller Prozesse, sortiert nach CPU-Aktivität, und aktualisiert diese alle drei Sekunden. In der obersten Zeile steht hinter Zeit, Laufzeit (Uptime) und der Zahl angemeldeter Benutzer die durchschnittliche Auslastung („load average“). Darunter zeigt „%CPU(s)“ die mittlere Auslastung aller CPU-Kerne an. Es folgt mit „KiB Spch“ beziehungsweise „KiB Mem“ die Speicherauslastung in KB. Wie es um die Auslagerungsdatei steht, zeigt die Zeile „KiB Swap“. Die Zahl vor „used“ (belegt) gibt jeweils den genutzten Speicher an. Die Taste Q beendet top wieder.

htop: Ist top zu schlicht und zu monochrom, dann bietet htop eine Alternative – ebenfalls für das Terminal. Der erweiterte Taskmanager und System-monitor bietet nicht nur Farbe und einen verständlicheren Aufbau, sondern zeigt zudem Auslastung von CPU, RAM und Auslagerungspartition in Balken an. Den unteren Bereich füllt, wie beim Vorbild top, die Programm-und Prozessliste aus, in der Sie mit den Pfeiltasten blättern können. Mit F3 suchen Sie in der Prozessliste, mit F9 können Sie Stop-Befehle an hängende Prozesse senden. F10 beendet das htop-Programm. Das Tool steht für alle Linux-Distributionen über den jeweiligen Paketmanager zur einfachen Installation zur Verfügung, unter Ubuntu und Debian beispielsweise mit diesem Kommando:

sudo apt-get install htop

Speicherauslastung anzeigen: Möchte man lediglich sehen, wie RAM und Auslagerungsdatei belegt sind, so gibt es ein einfacheres Mittel als top/htop. Der Befehl

free -m

zeigt im oberen Teil hinter „Mem“ den physikalischen Arbeitsspeicher, darunter folgt hinter „Swap“ die Gesamtgröße des Auslagerungbereichs („Total“), dessen aktuelle Auslastung („Used“) und der noch freie Swapspeicher („Free“).

Geräte: Erkannte Hardware auflisten

Systemnahe Hardware, etwa Grafikkarte, Grafikchip und WLAN-Chip, ist am schnellsten über den Befehl lspci in der Kommandozeile identifiziert. Das Kommando listet alle Geräte auf, die über den internen PCI-Bus und PCI-Express angesprochen werden.

Der verwandte Befehl für USB-Geräte lautet lsusb, etwa für externe WLAN-Adapter, wobei aber auch fest eingebaute WLAN-Karten über den USB-Bus angebunden sein können.

Eine grafische Variante dieser Werkzeuge ist das Programm „Hardinfo“, das in Ubuntu und Linux Mint mittels

sudo apt-get install hardinfo

installiert wird und eine ausführliche kategorisierte Hardwareliste zusammenträgt.

Das Kommandozeilentool top ist in jedem Linux-System vorhanden.
Vergrößern Das Kommandozeilentool top ist in jedem Linux-System vorhanden.

Datenträger: Belegung und Zustand

Die eher bescheidenen Größen erschwinglicher SSDs bringen alte Probleme zurück, da der Speicherplatz hier wieder ein knappes Gut ist. Um die Belegung des Datenträgers zu analysieren, bietet der „Disk Usage Analyser“ eine aufschlussreiche grafische Darstellung des Dateisystems. Es handelt sich um ein Programm aus dem Gnome-Repertoire, dass in vielen Fällen auch schon vorinstalliert ist – beispielsweise in Ubuntu und Linux Mint. Über den Namen „baobab“ lässt es sich auch in anderen Ubuntu-Varianten nachinstallieren:

sudo apt-get install baobab

Um auszuwählen, welche Partitionen oder Verzeichnisse untersucht werden sollen, zeigt der Disk Usage Analyser nach dem Start eine Gesamtübersicht der verfügbaren Datenträger an. Zur Visualisierung eines Datenträgers gibt es nicht nur eine nach Größe geordnete Liste, sondern auch ein Kreisdiagramm. Dieses zeigt ausgehend vom ausgewählten Verzeichnis in konzentrischen Kreissektoren die Unterverzeichnisse an – bis zu fünf Ebenen tief. Je nach Platzbedarf der Verzeichnisse sind die Kreissektoren breiter oder schmaler und zeigen damit schnell, wo die großen Brocken liegen.

Disk Usage Analyser: Auslastung der Festplatte und Platzbedarf von Ordnern in Kreisdiagramm.
Vergrößern Disk Usage Analyser: Auslastung der Festplatte und Platzbedarf von Ordnern in Kreisdiagramm.

In der Shell: Nach Verzeichnissen und Dateien schlüsselt der Befehl

du -h |sort -h

den Platzbedarf auf. Das Kommando zeigt ausgehend vom aktuellen Verzeichnis den Platzbedarf am Anfang jeder Zeile, aufsteigend nach dem Platzbedarf sortiert. Als root oder mit sudo ausgeführt, zeigt es auch den Speicherplatz des Ordners „/root“ an. Den ganz schnellen und knappen Zustandsbericht der Datenträgerbelegung liefert der Befehl df. Hier erfahren Sie sofort die Gesamtbelegung aller angeschlossenen Datenträger.

Smart-Werte anzeigen: Nahezu alle Festplatten und SSDs geben über SMART bereitwillig Auskunft über den eigenen Zustand. SMART steht kurz für „Self-Monitoring, Analysis, and Reporting Technology“ und bietet über die Firmware der Festplatte eine permanente Überwachung wichtiger Leistungsdaten, um die drohende Havarie frühzeitig zu erkennen. Google hat dazu eine interne Studie über 100.000 Festplatten im Dauereinsatz angestellt und das Ergebnis zeigt, dass sich immerhin 64 Prozent aller Ausfälle über SMART ankündigten ( https://research.google.com/pubs/pub32774.html ). Auf Ubuntu und seinen Varianten eignet sich zur Überprüfung das grafische Tool Gsmartcontrol, das in den Paketquellen zur Installation bereitsteht:

sudo apt-get install gsmartcontrol

Für die Diagnose per Kommandozeile gibt es das Paket „smartmontools“:

sudo apt-get install smartmontools

Damit ist dann der Blick auf die SMART-Parameter eines Laufwerks mittels des Befehls

sudo smartctl -a /dev/sda

möglich.

Heiße Hardware: Psensor zur Überwachung von CPU und Systemtemperatur.
Vergrößern Heiße Hardware: Psensor zur Überwachung von CPU und Systemtemperatur.

Temperatur: Prozessor und System

In vielen Notebooks läuft die CPU aufgrund beengter Verhältnisse heiß. Wer rechenintensive Programme ausführt, sollte die Temperatur des Prozessors im Auge behalten, um bei Bedarf für bessere Kühlung zu sorgen.

Unter Linux dient das Programm „lm-sensors“ dazu, die Temperaturfühler von Prozessor und Hauptplatine auszulesen. Bei Ubuntu und seinen Abkömmlingen wie Linux Mint installieren Sie das Tool mit diesem Terminalbefehl:

sudo apt-get install lm-sensors

Anschließend müssen Sie die Temperatursensoren von CPU und Hauptplatine einbinden. Das Installationsscript dazu rufen Sie mit

sudo sensors-detect

auf. Bei der darauf folgenden Suche nach unterstützten Chips können Sie alle Fragen mit der Vorgabe „yes“ beantworten. Das Installationsscript zeigt zum Abschluss die Liste gefundener Sensoren an und erstellt die Konfigurationsdatei automatisch. Zudem wird das benötigte Kernel-Modul i2c-dev geladen. Auch die Frage, ob die Zeilen zur Konfigurationsdatei „/etc/modules“ hinzugefügt werden sollen, beantworten Sie mit „yes“. Mit der Eingabesensors im Terminal fragen Sie anschließend die Temperaturfühler ab und bekommen auch Spannungen und Lüfterdrehzahl, falls die Hauptplatine dies unterstützt.

Grafische Auswertung: Komfortabler ist es, die Ausgabe von sensors grafisch auf dem Desktop zu sehen. Unter Ubuntu und Linux Mint eignet sich dazu das Programm „Psensor“ aus den Standard-Paketquellen.

„Load Average“: Eine alte Unix-Tradition

Unter Unix-ähnlichen Systemen, zu welchen auch Linux zählt, hat es sich durchgesetzt, die Systemauslastung mit dem Durchschnittswert „Load Average“ quantitativ zu bestimmen. Die Last (Load) ist nicht mit der Prozessorauslastung gleichzusetzen, sondern gibt die Anzahl der wartenden Prozesse an. Der Wert ist null, wenn das System im Leerlauf ist. Auf einem Ein-Prozessor-System entspricht die Last von eins einer Auslastung von 100 Prozent, auf einem Rechner mit zwei Prozessorkernen wäre das nur eine Auslastung von 50 Prozent. Tools wie top und htop geben drei dieser Werte hintereinander an. Der erste Wert ist der Durchschnittswert über die letzte Minute, der darauf folgende Wert gibt die letzten fünf Minuten wieder und der letzte Wert bezieht sich auf die letzten 15 Minuten.

0 Kommentare zu diesem Artikel
1843069