Website-Suche

So überwachen Sie die RAM-Auslastung unter Linux


Die RAM-Auslastung auf einem System ist aus mehreren Gründen gut zu wissen. Erstens kann es Ihnen einen Einblick geben, ob es notwendig ist, die Speicherkapazität Ihres Servers oder Computers aufzurüsten oder nicht. Wenn Sie feststellen, dass sich die Speicherauslastung regelmäßig der vollen Kapazität nähert, kann dies darauf hindeuten, dass Ihr System ein Upgrade benötigt.

Auf der anderen Seite kann es Ihnen auch helfen, Probleme auf einem System aufzuspüren. Ein Anstieg der Speicherauslastung kann auf ein Problem mit einem Prozess hinweisen, der auf dem Computer ausgeführt wird. In diesem Tutorial für Linux-Administratoren gehen wir auf einige Methoden ein, um die RAM-Auslastung unter Linux zu überprüfen und zu überwachen.

In diesem Tutorial lernen Sie:

  • So überprüfen Sie die RAM-Auslastung kostenlos
  • Überwachung der laufenden RAM-Nutzung mit kostenlosem
  • Wie funktioniert kostenlos?
  • So überprüfen Sie die RAM-Auslastung mit top
  • So überprüfen Sie die RAM-Auslastung mit htop

So überwachen Sie die RAM-Auslastung unter Linux

Verwendete Softwareanforderungen und Konventionen

KategorieAnforderungen, Konventionen oder verwendete Softwareversion
SystemUbuntu, Debian, CentOS, RHEL, Fedora
SoftwareNone
AnderePrivilegierter Zugriff auf Ihr Linux-System als root oder über den Befehl sudo.

So überprüfen Sie die RAM-Auslastung kostenlos

Der kostenlose Linux-Befehl bietet eine sehr schnelle und einfache Möglichkeit, die aktuelle Speicherauslastung eines Systems zu überprüfen. Die Interpretation der Ausgabe erfordert ein wenig Wissen, aber wir werden sie weiter unten behandeln. Ein paar Schalter sind auch praktisch, um sie zu kennen. Hier ist, was uns free auf unserem Testsystem zeigt:


free
              total        used        free      shared  buff/cache   available
Mem:        2035476      627700      443420       19828      964356     1231164
Swap:        969960           0      969960

Wie Sie sehen können, ist es nicht die einfachste Sache, dies zu interpretieren. Das liegt vor allem daran, dass die Ausgabe standardmäßig in Kibibyte angegeben wird. Der Schalter -h, der für "human readable" steht, hilft uns, die Ausgabe besser zu verstehen:


free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9G        784M        145M         20M        1.0G        1.0G
Swap:          947M          0B        947M

Jetzt sind die Werte schon mit einem kurzen Blick deutlich übersichtlicher. Diese Ausgabe teilt uns mit, dass unser System über etwa 2 GB physischen Speicher und etwa 1 GB Auslagerungsspeicher verfügt. Lassen Sie uns die Details aufschlüsseln, die in all diesen Spalten dargestellt werden, da die Terminologie hier etwas verwirrend wird.

Gesamt: Diese Spalte ist offensichtlich – sie zeigt an, wie viel RAM physisch in Ihrem System installiert ist, sowie die Größe der Auslagerungsdatei.

Verwendet: In dieser Spalte wird die Menge an Arbeitsspeicher aufgelistet, die gerade verwendet wird – aber halt, das ist nicht ganz so intuitiv, wie es sich anhört. Nur weil der Arbeitsspeicher "in Gebrauch" ist, bedeutet das nicht zwangsläufig, dass er von einem Prozess oder einer Anwendung aktiv genutzt wird.

Während die Spalte "used" den RAM darstellt, der gerade von den verschiedenen Programmen auf einem System verwendet wird, fügt sie auch den RAM hinzu, den der Kernel für die Pufferung und Zwischenspeicherung verwendet. Dies macht Lese- und Schreiboperationen effizienter, aber der Kernel wird diesen Speicher neu zuweisen, wenn ein Prozess ihn benötigt.

Die Zahl in dieser Spalte ist die Summe von total-free-buffers-cache.

Frei: In dieser Spalte wird die Menge an Arbeitsspeicher aufgelistet, die vollständig ungenutzt ist. Normalerweise sollte es hier eine ziemlich kleine Anzahl sein, da Linux den größten Teil des freien RAM für Puffer und Caches verwendet, anstatt ihn völlig im Leerlauf zu lassen. Wie Sie in unserer obigen Beispielausgabe sehen können, verfügt unser Testgerät über mickrige 145 MB Speicher, der völlig kostenlos ist.

Shared: In dieser Spalte wird die Menge an Arbeitsspeicher angezeigt, die tmpfs ("temporärer Dateispeicher") zugewiesen ist. Wie der Name schon sagt, speichert dieses Dateisystem temporäre Dateien, um die Vorgänge auf Ihrem Computer zu beschleunigen. Unter Linux wird tmpfs als gemountetes Dateisystem dargestellt, obwohl keine dieser Dateien tatsächlich auf die Festplatte geschrieben wird – sie werden im RAM gespeichert, daher ist diese Spalte erforderlich.

Für die Neugierigen: Die tmpfs-Speicherplätze eines Systems können mit dem Befehl df beobachtet werden:


df -h --type=tmpfs
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           199M  1.4M  198M   1% /run
tmpfs           994M     0  994M   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           994M     0  994M   0% /sys/fs/cgroup
tmpfs           199M   36K  199M   1% /run/user/1000
tmpfs           199M     0  199M   0% /run/user/0

Puffer/Cache: Diese Spalte enthält die Summe aus Puffer und Cache. Linux nutzt den Puffer und den Cache, um Lese- und Schreibvorgänge zu beschleunigen – es ist viel schneller, Daten aus dem Speicher zu lesen als von einer Festplatte. Der größte Teil des hier dargestellten Speichers kann bei Bedarf von Prozessen freigegeben werden.

Sie können diese beiden Spalten separat anzeigen, indem Sie die Option -w (breit) angeben:


free -h -w
              total        used        free      shared     buffers       cache   available
Mem:           1.9G        780M         82M         20M        109M        1.0G        1.0G
Swap:          947M          0B        947M

Verfügbar: Diese Spalte enthält eine Schätzung (eine genaue, aber nichtsdestotrotz eine Schätzung) des Speichers, der zur Verwendung verfügbar ist. Die Zahl in dieser Spalte ist die Summe aus der freien Spalte und dem zwischengespeicherten RAM, der für die Neuzuweisung verfügbar ist.

Dies ist die Spalte, die Sie sich ansehen sollten, wenn Sie einfach nur antworten möchten: "Wie viel freien RAM hat mein System zur Verfügung? " Um herauszufinden, wie viel RAM derzeit verwendet wird (ohne Berücksichtigung von Puffer und Cache), ziehen Sie die verfügbare Menge von der Gesamtmenge ab.

Überwachung der laufenden RAM-Nutzung mit kostenlosem

Wenn Sie den Befehl free ausführen, wird die aktuelle RAM-Auslastung zu diesem Zeitpunkt angezeigt. Free hat aber auch einige Optionen für den kontinuierlichen Betrieb, falls Sie die Nutzung eine Weile im Auge behalten müssen.

Dies ist praktisch, wenn Sie sehen möchten, wie sich das Ausführen bestimmter Aufgaben auf Ihrem System auf den Arbeitsspeicher auswirkt, z. B. beim Öffnen eines ressourcenintensiven Programms.

Der Schalter -s (Sekunden) ermöglicht es, dass free kontinuierlich ausgeführt wird und alle angegebene Anzahl von Sekunden eine neue Ausgabe ausgegeben wird. So führen Sie beispielsweise den Befehl free alle 3 Sekunden aus:


free -s 3

Um die Ausführung zu beenden, drücken Sie einfach Strg+C.

Wenn Sie nur eine bestimmte Anzahl von Malen kostenlos ausführen möchten, können Sie die Option -c (count) verwenden. Zum Beispiel würde dieser Befehl 3 Mal frei laufen, bevor das Programm beendet wird:


free -c 3

Ohne die Option -s gibt die Option count jede Sekunde eine neue Ausgabe aus. Aber du kannst beide Schalter kombinieren, um genau das Verhalten zu erhalten, das du dir wünschst. Um z. B. die freie Lesbarkeit und die Verwendung des Ausgabespeichers alle 5 Sekunden und 20 Mal zu erhöhen:


free -h -s 5 -c 20

Wie funktioniert kostenlos?

Es ist erwähnenswert, dass der kostenlose Befehl eigentlich nur eine prägnante Möglichkeit ist, Informationen zu sehen, die bereits an anderer Stelle angezeigt werden. Wenn Sie direkt zum Quellcode gehen möchten, werfen Sie einen Blick auf die Pseudo-Datei /proc/meminfo:


more -10 /proc/meminfo
MemTotal:        2035476 kB
MemFree:           95280 kB
MemAvailable:    1036360 kB
Buffers:          116180 kB
Cached:           931872 kB
SwapCached:           36 kB
Active:          1146732 kB
Inactive:         589208 kB
Active(anon):     676400 kB
Inactive(anon):    32892 kB
--More--(0%)

So überprüfen Sie die RAM-Auslastung mit top

Obwohl der Befehl free uns die gesamte RAM-Auslastung auf einem System sehr gut anzeigt, sagt er uns nicht, welche Aufgaben den Speicher verbrauchen. Hier zeichnet sich der Top-Befehl aus, der die Speicherauslastung für jeden Prozess auf dem System anzeigt.


top

Achten Sie auf die Spalte %MEM:

So sehen Sie die aktuelle RAM-Auslastung mit dem Befehl top

Um die Programme oben nach Speicherverbrauch zu sortieren, drücken Sie Umschalt+m, während Sie oben ausgeführt werden. Auf diese Weise können Sie auf einen Blick sehen, welche Prozesse den meisten Speicher beanspruchen, und Sie können deren Auslastung kontinuierlich überwachen.

Drücken Sie einfach q, um den oberen Ton zu verlassen.

So überprüfen Sie die RAM-Auslastung mit htop

Wie wäre es mit einem Programm, das das Beste aus beiden Welten vereint? Das Dienstprogramm htop kann uns die Gesamtauslastung des Arbeitsspeichers auf klare Weise anzeigen, die Statistiken kontinuierlich aktualisieren und uns zeigen, wie viel Speicher jeder Prozess verwendet.

Im Gegensatz zu free und top ist htop unter Linux oft nicht standardmäßig enthalten. So installieren Sie es:

Ubuntu und Debian:


sudo apt-get install htop

CentOS und Red Hat:


yum install htop

Fedora:


dnf install htop

Sobald es installiert ist, geben Sie einfach htop ein, um es auszuführen.


htop

So sehen Sie die aktuelle RAM-Auslastung mit dem Befehl htop

Die RAM-Auslastung des gesamten Systems wird am oberen Rand des Bildschirms angezeigt. Um Prozesse nach Speicherauslastung zu sortieren, drücken Sie F6 und wählen Sie dann %MEM mit den Pfeiltasten Ihrer Tastatur aus.

Beenden Sie htop jederzeit, indem Sie q drücken.

Schlussfolgerung

In diesem Artikel haben wir gesehen, wie Sie die RAM-Auslastung auf einem Linux-System überprüfen und überwachen können. Wir lernten mehrere Tools kennen, die uns bei der Überwachung helfen können, und wie wir diese Tools effizient nutzen können.

Mit den verschiedenen Methoden aus diesem Leitfaden können Sie immer die RAM-Auslastung Ihres Systems ermitteln, einschließlich der Prozesse, die es aktiv verwenden. Dies kann Ihnen Hinweise auf Systemprobleme geben oder dabei helfen, festzustellen, ob Ihr System von einer Speicheraufrüstung profitieren würde oder nicht.

Verwandte Artikel: