Wer bei seinem unter Linux betriebenen Server oder Webhosting-Account schon immer einmal einen Blick „unter die Haube“ riskieren wollte, braucht dazu keine speziellen Tools:
Allein mit den Bordmitteln von Linux ist es möglich, Informationen zur System- und Speicherauslastung, laufende Prozesse und andere Systemdaten abzurufen.
Nun könnte man fragen „Wozu das Ganze?“ – gerade bei komplexen, auf Content Management Systemen aufbauenden Websites und gut besuchten Shops ist es wichtig, sich von Zeit zu Zeit Gewissheit über die vorhandenen Systemressourcen zu verschaffen. Auch kann es nicht schaden, einmal zu prüfen, ob der Webhoster die bestellte Systemkonfiguration tatsächlich bereitstellt.
Eine niedrige Performance, die durch Probleme auf Hardwareebene verursacht wird, können Sie so relativ schnell ermitteln und – beispielsweise durch ein Speicher- oder CPU-Upgrade – beseitigen.
Ebenso lassen sich besonders speicherhungrige Prozesse identifizieren; ein weiterer Aspekt, der die Leistungsfähigkeit eines Servers beeinträchtigt.
Sie benötigen dazu lediglich Zugang zum Terminal, also zur Kommandozeilen-Ebene, gemeinhin einfach als „Shell“ bezeichnet. Abhängig von der Systemkonfiguration sind hierfür root-Rechte erforderlich, um die entsprechenden Befehle zu nutzen.
Speicherauslastung anzeigen
Möchten Sie sich nur die RAM-Nutzung anzeigen lassen, genügt ein simples Kommando:
free
Neben dem Status des physikalischen Speichers (RAM) finden Sie Angaben zum als „swap“ bezeichneten virtuellen Hauptspeicher; also den Daten, die nicht im schnellen RAM schlummern, sondern im (meist langsameren) Massenspeicher des Servers, wie Festplatte oder SSD-Speicher.
Betriebszeit und Auslastung anzeigen
Einen groben Überblick über den Systemstatus liefert der folgende Befehl:
uptime
Er tut genau das, was seine Übersetzung ins Deutsche vermuten lässt, nämlich die Anzeige der seit des letzten Systemstarts (Bootvorgangs) verstrichenen Zeit, sowie Angaben über angemeldete Benutzer und die durchschnittliche Systemauslastung.
Prozesse, CPU- und Speicherauslastung anzeigen
Mit dem folgenden Befehl erhalten Sie mehr Informationen über laufende Prozesse aller Nutzer sowie Details zur Prozessor- und Speicherauslastung:
top
Dieses Werkzeug bietet unter anderem Zugriff auf folgende Daten:
- Betriebszeit des Servers seit dem letzten Systemstart
- Durschnittliche CPU-Auslastung
- Speicherauslastung (RAM, Auslagerungsdatei)
- Tabellarische Liste aller laufenden Prozesse
Möchten Sie nur die Prozesse eines bestimmten Benutzers anzeigen? Kein Problem:
top -u username
Ersetzen Sie „username“ durch den gewünschten Benutzer. Beispielsweise könnten alle Prozesse des Webservers dem Benutzer „www-data“ zugeordnet sein (das ist jedoch von der individuellen Systemkonfiguration abhängig).
Um die Ansicht zu verlassen und wieder zur Eingabeaufforderung („command prompt“) zurückzukehren, drücken Sie die Tastenkombination STRG + Z.
htop – wie top, nur schöner
Dieser Systemmonitor bietet vergleichbare Angaben wie top, jedoch in Farbe und mit einer Balkengrafik zur visuellen Anzeige von CPU- und Speicherauslastung. Nutzen Sie hierfür den folgenden Befehl:
htop
Zusätzlich besteht die Möglichkeit zur Individualisierung und Filterung der Ausgaben über Funktionstasten und einer einfachen Menüstruktur.
Steht der Befehl auf Ihrem System nicht zur Verfügung, kann er meist folgendermaßen nachträglich installiert werden:
sudo apt-get install htop
Die Last mit der Last…
Als Nutzer von Windows und macOS sind Sie es vermutlich gewohnt, die Prozessorauslastung in einem aussagekräftigen Prozentwert zu erhalten, wobei 0 % Leerlauf bedeutet und 100 % die maximale Leistungsgrenze darstellt.
Unter Linux dient hingegen die Anzahl der Prozesse als Maßstab, welche aktuell von der CPU verarbeitet werden oder sich in der Warteschlange befinden. Man spricht hier von „lauffähigen Prozessen“.
Um die Systemauslastung beurteilen zu können, werden üblicherweise drei Mittelwerte berechnet – und zwar für Intervalle von einer Minute, fünf Minuten und fünfzehn Minuten. Anhand dieser Werte können Sie ablesen, wieviele lauffähige Prozesse in der entsprechenden Zeitspanne durchschnittlich aktiv waren.
Bedeutung der Angabe „load average“:
- Ein Wert kleiner als 1 ist ein Zeichen für eine sehr geringe Systemauslastung. Alles im grünen Bereich!
- Ein Wert von (mehr oder weniger) exakt 1 ist ebenfalls ideal, da dann immer ein Prozess aus der Warteschlange heraus ausgeführt wird.
- Werte größer 1 stellen grundsätzlich ebenfalls kein Problem dar; je größer der Wert, desto länger müssen die Prozesse jedoch auf ihre Verarbeitung warten.
Zur Bestimmung einer realitätsnahen Systemauslastung eignet sich vor allem der Durchschnittswert der letzten fünfzehn Minuten. Liegt dieser dauerhaft über 1, sollte die Systemperformance geprüft werden.
Aber Achtung: Eine hohe „load average“ bedeutet nicht unbedingt eine hohe CPU-Auslastung. Auch andere Faktoren können die Verarbeitung der Prozesse beeinflussen. Beispielsweise eine unzureichende Dimensionierung des Arbeitsspeichers oder ein niedriger Datendurchsatz des Massenspeichers.
Erkannte Hardware und andere Geräte auflisten
Schlußendlich kommen wir noch auf das Thema Hardware zu sprechen.
Möchten Sie Details zu systemnahen Hardwarekomponenten abrufen, die über den PCI-Bus angeschlossen sind, wie Grafikkarte, Festplatten- und Netzwerk-Controller, dann ist der folgende Befehl der Richtige:
lspci
Eine Übersicht aller USB-Geräte liefert Ihnen dieses Kommando:
lsusb
Autor: Tobias Eichner | Datum der Veröffentlichung: Dezember 2019
Wichtig: Bitte beachten Sie die Nutzungsbedingungen und rechtlichen Hinweise für diesen Beitrag!