Die Überwachung der Speichernutzung ist eine wichtige Aufgabe für Linux-Systemadministratoren und Benutzer, die die Leistung ihres Systems verbessern möchten. Linux verfügt über mehrere Kommandozeilenwerkzeuge, die Echtzeitinformationen über die Speichernutzung anzeigen und Ihnen ermöglichen, die Speichernutzung zu verfolgen und zu analysieren. In diesem Artikel betrachten wir einige der nützlichsten Kommandozeilenwerkzeuge zur Überprüfung der Speichernutzung auf Linux-Systemen, einschließlich cat, free, vmstat, top, htop, sar, und wie Sie die Datei /proc/meminfo verstehen.
Wichtige Erkenntnisse
- Der Befehl
cat /proc/meminfozeigt Echtzeit-Speichermetriken wie den gesamten nutzbaren RAM, freien Speicher und zwischengespeicherten Speicher an. - Der Befehl
freeliefert eine benutzerfreundliche Ausgabe der Speichernutzungsstatistiken, einschließlich gesamt, verwendet, frei, geteilt, buff/cache und verfügbarer Speicher. - Der Befehl
vmstatmeldet eine Momentaufnahme der Speichernutzung des Systems, einschließlich Prozesse, Speicher, Paging, Block-IO, Traps und CPU-Aktivität. - Der Befehl
topist ein interaktives Tool, das Echtzeitinformationen über die Systemressourcennutzung anzeigt, einschließlich CPU- und Speichernutzung auf Prozessbasis. - Der Befehl
htopist eine verbesserte Version vontopmit einer benutzerfreundlicheren Oberfläche und zusätzlichen Funktionen wie Farbcodierung und Prozessverwaltung über Tastenkombinationen.
Verwendung von Kommandozeilenwerkzeugen zur Überprüfung der Speichernutzung
Linux bietet mehrere Kommandozeilenwerkzeuge, mit denen Sie die Speichernutzung in Echtzeit überprüfen können. Diese Tools sind wichtig für Systemadministratoren und Benutzer, die die Leistung ihres Systems überwachen und optimieren möchten.
cat-Befehl
Der Befehl cat ist eine einfache Möglichkeit, den Inhalt der Datei /proc/meminfo anzuzeigen, die Echtzeitinformationen über die Speichernutzung des Systems enthält.
cat /proc/meminfo
Dieser Befehl zeigt verschiedene Speichermetriken an, wie:
- MemTotal: Gesamter nutzbarer RAM
- MemFree: Die Menge an physischem RAM, die ungenutzt bleibt
- MemAvailable: Eine Schätzung, wie viel Speicher zum Starten neuer Anwendungen verfügbar ist, ohne Swapping
- Buffers: Die Menge an temporärem Speicher für rohe Festplattenblöcke
- Cached: Die Menge an physischem RAM, der als Cache-Speicher verwendet wird
Hier ist eine Beispielausgabe:
MemTotal: 8116552 kB
MemFree: 385440 kB
MemAvailable: 1890092 kB
Buffers: 259300 kB
Cached: 1345384 kB
...
free-Befehl
Der Befehl free liefert eine benutzerfreundlichere Ausgabe der Speichernutzungsstatistiken. Er zeigt den gesamten, verwendeten, freien, geteilten, buff/cache und verfügbaren Speicher an.
free -h
Die Option -h zeigt die Ausgabe in einem für Menschen lesbaren Format an. Hier ist eine Beispielausgabe:
total used free shared buff/cache available
Mem: 7.8Gi 6.1Gi 387Mi 1.0Gi 1.3Gi 1.8Gi
Swap: 2.0Gi 1.1Gi 912Mi
Sie können auch andere Optionen wie -b (Bytes), -k (Kibibytes), -m (Mebibytes) oder -g (Gibibytes) verwenden, um die Ausgabeeinheiten zu ändern.
vmstat-Befehl
Der Befehl vmstat meldet Statistiken zum virtuellen Speicher und andere Systeminformationen. Er bietet eine Momentaufnahme der Speichernutzung des Systems, einschließlich Prozesse, Speicher, Paging, Block-IO, Traps und CPU-Aktivität.
vmstat
Hier ist eine Beispielausgabe:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 1132052 395700 259300 1345384 0 1 33 52 85 176 9 5 85 1 0
Der Speicherbereich zeigt die Menge an verwendetem Swap-Speicher (swpd), freiem Speicher (free), Pufferspeicher (buff) und Cache-Speicher (cache).
top-Befehl
Der Befehl top ist ein interaktives Tool, das Echtzeitinformationen über die Systemressourcennutzung anzeigt, einschließlich CPU- und Speichernutzung auf Prozessbasis.
top
Hier ist eine vereinfachte Beispielausgabe:
top - 10:30:00 up 2 days, 18:00, 1 user, load average: 0.50, 0.68, 0.83
Tasks: 287 total, 1 running, 286 sleeping, 0 stopped, 0 zombie
%Cpu(s): 8.7 us, 5.0 sy, 0.0 ni, 85.3 id, 1.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 7854.2 total, 386.4 free, 6119.4 used, 1348.4 buff/cache
MiB Swap: 2048.0 total, 938.2 free, 1109.8 used. 1711.6 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 user 20 0 1234.5m 123.4m 12.3m S 5.0 1.6 1:23.45 process_name
Der top-Befehl bietet eine dynamische Ansicht der Systemprozesse und ihres Ressourcenverbrauchs. Sie können Prozesse nach Speichernutzung mit der Taste M sortieren und Prozesse mit verschiedenen interaktiven Befehlen verwalten.
htop-Befehl
Der Befehl htop ist eine verbesserte Version des Befehls top und bietet eine benutzerfreundlichere Oberfläche mit zusätzlichen Funktionen.
htop
Der Befehl htop zeigt eine farbcodierte Echtzeitansicht der Systemprozesse und Ressourcennutzung. Er unterstützt vertikales und horizontales Scrollen, Prozesssuche und Prozessverwaltung über Tastenkombinationen.
sar-Befehl
Der Befehl sar ist ein Systemaktivitätsreporter, der verschiedene Aspekte der Systemleistung überwacht, einschließlich der Speichernutzung.
sar -r 1 5
Dieser Befehl zeigt Statistiken zur Speichernutzung jede Sekunde für 5 Iterationen an. Hier ist eine Beispielausgabe:
07:30:01 PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
07:30:02 PM 385600 6127104 94.07 259300 1345384 16327220 130.59 5132848 1347188 0
07:30:03 PM 385724 6126980 94.07 259300 1345380 16327220 130.59 5134528 1347168 0
07:30:04 PM 385620 6127084 94.07 259300 1345384 16327220 130.59 5132784 1347188 0
07:30:05 PM 385752 6126952 94.07 259300 1345380 16327220 130.59 5134336 1346992 0
07:30:06 PM 385600 6127104 94.07 259300 1345384 16327220 130.59 5132624 1347184 0
Average: 385659 6127045 94.07 259300 1345382 16327220 130.59 5133424 1347144 0
Die Ausgabe enthält Metriken wie kbmemfree (freier Speicher in Kilobytes), kbmemused (verwendeter Speicher in Kilobytes) und %memused (Prozentsatz des verwendeten Speichers).
/proc/meminfo-Datei
Die Datei /proc/meminfo ist eine virtuelle Datei, die Echtzeitinformationen über die Speichernutzung des Systems bereitstellt. Sie können diese Datei mit Tools wie awk oder grep analysieren, um bestimmte Metriken zu erhalten.
Die Datei /proc/meminfo enthält verschiedene Speichermetriken wie MemTotal, MemFree, Buffers, Cached, Active und Inactive. Diese Metriken bieten einen detaillierten Überblick über die Speichernutzung des Systems.
Hier ist ein Beispiel für die Verwendung von awk, um bestimmte Metriken zu erhalten:
awk '/MemTotal/{print $2}' /proc/meminfo
Dieser Befehl gibt den Wert der MemTotal-Metrik in Kilobytes aus.
Diese Kommandozeilenwerkzeuge bieten eine leistungsstarke und flexible Möglichkeit, die Speichernutzung auf Linux-Systemen zu überwachen. Durch das Erlernen dieser Tools können Systemadministratoren und Benutzer die Speichernutzung ihres Systems verfolgen und optimieren.
Verwendung von GUI-Tools zur Überprüfung der Speichernutzung
Während Kommandozeilenwerkzeuge leistungsstark und flexibel sind, bietet Linux auch grafische Tools zur Überwachung der Speichernutzung. Diese Tools sind nützlich für Benutzer, die eine visuelle Oberfläche bevorzugen oder weniger vertraut mit der Kommandozeile sind.
Systemmonitor-App
Die Systemmonitor-App ist eine grafische Anwendung, die einen Echtzeitüberblick über die Systemressourcennutzung bietet, einschließlich des Speicherverbrauchs. Sie ist auf den meisten Linux-Distributionen mit einer Desktop-Umgebung verfügbar, wie GNOME, KDE oder Xfce.
So greifen Sie auf die Systemmonitor-App zu:
- Öffnen Sie das Anwendungsmenü oder Dashboard.
- Suchen Sie nach "Systemmonitor" oder gehen Sie zur Kategorie Systemwerkzeuge.
- Starten Sie die Systemmonitor-App.
Die Systemmonitor-App zeigt verschiedene Systemmetriken an, einschließlich CPU-Nutzung, Speichernutzung, Netzwerkaktivität und Festplatten-I/O. Im Speicher-Tab können Sie die folgenden Informationen anzeigen:
| Metrik | Beschreibung |
|---|---|
| Gesamtspeicher | Die Gesamtmenge an physischem Speicher (RAM), die im System installiert ist. |
| Verwendeter Speicher | Die Menge an Speicher, die aktuell von Anwendungen und dem Betriebssystem verwendet wird. |
| Gecachter Speicher | Die Menge an Speicher, die zum Zwischenspeichern von Festplattendaten zur Leistungsverbesserung verwendet wird. |
| Gepufferter Speicher | Die Menge an Speicher, die für die temporäre Speicherung von rohen Festplattenblöcken verwendet wird. |
| Freier Speicher | Die Menge an Speicher, die aktuell nicht verwendet wird. |
| Swap-Nutzung | Die Menge an verwendetem und verfügbarem Swap-Speicher. |
Beispiel
Angenommen, Sie haben ein Linux-System mit 8 GB Gesamtspeicher. Wenn Sie die Systemmonitor-App öffnen, sehen Sie die folgende Aufschlüsselung der Speichernutzung:
- Verwendeter Speicher: 4,5 GB
- Gecachter Speicher: 1,2 GB
- Gepufferter Speicher: 0,3 GB
- Freier Speicher: 2 GB
Dies zeigt, dass von den 8 GB Gesamtspeicher 4,5 GB aktiv von Anwendungen und dem Betriebssystem verwendet werden, 1,2 GB zum Zwischenspeichern von Festplattendaten verwendet werden, 0,3 GB zum Puffern von Festplattenblöcken verwendet werden und 2 GB aktuell frei und zur Verwendung verfügbar sind.
Die Systemmonitor-App bietet auch eine grafische Darstellung der Speichernutzung über die Zeit, sodass Sie Trends und potenzielle Probleme erkennen können.
GNOME Systemmonitor
Der GNOME Systemmonitor ist ein fortgeschritteneres GUI-Tool zur Überwachung von Systemressourcen und Prozessen. Er ist Teil der GNOME-Desktop-Umgebung, kann aber auch auf anderen Linux-Distributionen installiert werden.
So starten Sie den GNOME Systemmonitor:
- Öffnen Sie das Systemmenü oder den Anwendungsstarter.
- Gehen Sie zur Kategorie Administration oder Systemwerkzeuge.
- Wählen Sie die Anwendung "Systemmonitor".
Sie können den GNOME Systemmonitor auch über die Kommandozeile mit folgendem Befehl starten:
gnome-system-monitor
Der GNOME Systemmonitor bietet detaillierte Informationen über die Systemressourcennutzung, einschließlich des Speicherverbrauchs. Im Ressourcen-Tab können SieFolgendes anzeigen:
- Speicher- und Swap-Verlauf: Eine grafische Darstellung der Speicher- und Swap-Nutzung über die Zeit.
- Speicher: Der gesamte, verwendete und freie Speicher sowie die Menge an Speicher, die für Caching und Puffer verwendet wird.
- Swap: Der gesamte, verwendete und freie Swap-Speicher.
Beispiel
Angenommen, Sie führen eine speicherintensive Anwendung auf Ihrem Linux-System aus und bemerken, dass sich das System langsam anfühlt. Sie starten den GNOME Systemmonitor, um das Problem zu untersuchen. Im Ressourcen-Tab beobachten Sie Folgendes:
- Gesamtspeicher: 16 GB
- Verwendeter Speicher: 14,5 GB
- Freier Speicher: 1,5 GB
- Verwendeter Swap: 2 GB
Diese Information legt nahe, dass die speicherintensive Anwendung einen großen Teil des verfügbaren Speichers verwendet, was dazu führt, dass das System Swap-Speicher nutzt. Die hohe Speichernutzung und Swap-Auslastung können zu einer reduzierten Systemleistung führen.
Der GNOME Systemmonitor ermöglicht Ihnen auch, Prozesse anzuzeigen und zu verwalten, und hilft Ihnen dabei, Anwendungen zu finden, die möglicherweise zu viel Speicher verwenden. Sie können die Prozesse nach Speichernutzung sortieren, um die speicherhungrigsten Anwendungen zu identifizieren und geeignete Maßnahmen zu ergreifen, wie das Schließen unnötiger Programme oder die Optimierung der Speichernutzung der Anwendung.
Mit GUI-Tools wie der Systemmonitor-App und dem GNOME Systemmonitor können Linux-Benutzer die Speichernutzung auf ihren Systemen einfach verfolgen und analysieren. Diese Tools bieten eine benutzerfreundliche Oberfläche und visuelle Darstellungen, die es einfacher machen, den Speicherverbrauch zu verstehen und zu überwachen.
Weitere Befehle und Tools
Zusätzlich zu den beliebten Kommandozeilen- und GUI-Tools, die wir behandelt haben, gibt es mehrere weitere Tools zur Überwachung der Speichernutzung auf Linux-Systemen. Ein solches Tool ist der Befehl btop.
btop-Befehl
Der Befehl btop ist ein moderner, leichtgewichtiger und plattformübergreifender Ressourcenmonitor, der im Terminal läuft. Er bietet eine farbenfrohe Oberfläche zur Anzeige der Echtzeitnutzung und Statistiken für CPU, Speicher, Festplatten, Netzwerk und Prozesse.
Funktionen von btop umfassen:
- Anpassbare Oberfläche
- Möglichkeit, Prozesse zu filtern
- Baumansicht von Prozessen
- Navigation mit Maus, Tastatur oder Touch
- Unterstützt Linux, macOS und FreeBSD
Installation
Um btop auf verschiedenen Linux-Distributionen zu installieren, können Sie die folgenden Paketmanager verwenden:
| Distribution | Paketmanager | Installationsbefehl |
|---|---|---|
| Debian-basiert (z.B. Ubuntu) | apt |
sudo apt install btop |
| Red Hat-basiert (z.B. CentOS) | dnf |
sudo dnf install btop |
| Arch Linux | pacman |
sudo pacman -S btop |
Auf anderen Linux-Distributionen oder Betriebssystemen müssen Sie btop möglicherweise aus dem Quellcode kompilieren. Weitere Informationen finden Sie im btop-Installationshandbuch.
Verwendung
Nach der Installation können Sie btop starten, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:
btop
In der btop-Oberfläche können Sie die folgenden speicherbezogenen Informationen anzeigen:
- Speichernutzungsgrafik
- Gesamtspeicher
- Verwendeter Speicher
- Freier Speicher
- Puffer
- Gecachter Speicher
- Verfügbarer Speicher
- Swap-Nutzung





