Es gibt viele Befehle, die verwendet werden können, um die installierte Gesamtgröße des RAM-Speichers zu identifizieren und die Menge an freiem und verwendetem Speicher in Linux-Betriebssystemen wie Red Hat Enterprise Linux (RHEL), CentOS, Ubuntu usw. zu überprüfen.
Arbeitsspeicher ist eine der kritischen Ressourcen für einen Computer, insbesondere für einen Server, da genügend Arbeitsspeicher sicherstellt, dass Anwendungen der für die Ausführung des Vorgangs erforderliche Arbeitsspeicher zugewiesen werden kann, bevor auf die Festplatte ausgelagert wird, was viel langsamer ist und die Reaktionszeit behindert.
Da die GUI nicht immer verfügbar ist, insbesondere für Linux-Benutzer, die häufig per SSH oder Telnet mit einem Remote-System verbunden sind, konzentriert sich dieses Tutorial auf Befehlszeilenoptionen, um die Speichernutzung und den Status in Linux herauszufinden, einschließlich RAM und Swap.
1. kostenloser Befehl
Der Befehl free zeigt die Gesamtmenge an freiem und verwendetem physischem und Auslagerungsspeicher im System sowie die vom Kernel verwendeten Puffer und Caches an. Die Informationen werden durch Parsen von /proc/meminfo gesammelt. Die angezeigten Informationen sind:
- total:Gesamter installierter Speicher (MemTotal und SwapTotal in /proc/meminfo)
- used:Benutzter Speicher (berechnet als gesamt – frei – Puffer – Cache)
- free:Ungenutzter Speicher (MemFree und SwapFree in /proc/meminfo)
- shared:Speicher, der (meistens) von tmpfs verwendet wird (Shmem in /proc/meminfo, verfügbar auf Kernel 2.6.32, angezeigt als Null, wenn nicht verfügbar)
- buffers:Speicher, der von Kernelpuffern verwendet wird (Puffer in /proc/meminfo)
- Cache:Speicher, der vom Seiten-Cache und Slabs verwendet wird (Cached und Slab in /proc/meminfo)
- buff/cache:Summe aus Buffer und Cache
- verfügbar:Schätzung, wie viel Speicher zum Starten neuer Anwendungen ohne Austausch verfügbar ist. Im Gegensatz zu den vom Cache bereitgestellten Daten oder freien Feldern berücksichtigt dieses Feld den Seiten-Cache und auch, dass nicht alle zurückgewinnbaren Speicherblöcke zurückgefordert werden, da Elemente verwendet werden (MemAvailable in /proc/meminfo, verfügbar auf Kernel 3.14, emuliert auf Kernel 2.6.27+, ansonsten wie kostenlos)
Beispielausgabe:
total used free shared buff/cache available Mem: 24512912 253112 23761468 41484 498332 23873560 Swap: 12387324 0 12387324TippDie Standardoption zeigt den Speicher in KB (Kilobyte) an. Um in MB (Megabyte) anzuzeigen, verwenden Sie „free -m“.
2. vmstat-Befehl
vmstat meldet Informationen über Prozesse, Speicher, Paging, Block-IO, Traps, Festplatten und CPU-Aktivität. Die folgenden Informationen werden standardmäßig angezeigt:
Prozesse
r:Die Anzahl der lauffähigen Prozesse (die laufen oder auf Laufzeit warten).
b:Die Anzahl der Prozesse im unterbrechungsfreien Ruhezustand.
Erinnerung
swpd:die Menge des verwendeten virtuellen Speichers.
free:die Menge an ungenutztem Speicher.
buff:die als Puffer verwendete Speichermenge.
Cache:Die als Cache verwendete Speichermenge.
inact:die Menge an inaktivem Speicher. (-eine Option)
aktiv:die Menge an aktivem Speicher. (-eine Option)
Tauschen
si:Speichermenge, die von der Festplatte (/s) eingelagert wurde.
also:Größe des auf die Festplatte ausgelagerten Speichers (/s).
IO
bi:Von einem Blockgerät empfangene Blöcke (Blöcke/s).
bo:An ein Blockgerät gesendete Blöcke (Blöcke/s).
System
in:Die Anzahl der Interrupts pro Sekunde, einschließlich der Uhr.
cs:Die Anzahl der Kontextwechsel pro Sekunde.
Prozessor
Dies sind Prozentsätze der gesamten CPU-Zeit.
us:Zeit, die mit der Ausführung von Nicht-Kernel-Code verbracht wird. (Benutzerzeit, einschließlich netter Zeit)
sy:Zeit, die mit dem Ausführen von Kernel-Code verbracht wird. (Systemzeit)
id:Leerlauf verbrachte Zeit. Vor Linux 2.5.41 umfasst dies die IO-Wartezeit.
wa:Wartezeit auf IO. Vor Linux 2.5.41 im Leerlauf enthalten.
st:Von einer virtuellen Maschine gestohlene Zeit. Vor Linux 2.6.11 unbekannt.
Beispielausgabe:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 23760168 62096 438828 0 0 0 0 4 4 0 0 100 0 0
3. oberster Befehl
Der Befehl top wird hauptsächlich verwendet, um eine dynamische Echtzeitansicht eines laufenden Systems anzuzeigen, insbesondere der Linux-Prozesse oder -Threads, die derzeit vom Linux-Kernel verwaltet werden. Es zeigt aber auch zusammenfassende Informationen zum System an, einschließlich RAM-Speicher und freier und verwendeter Auslagerungsgröße.
Um das Top-Programm zu verlassen, drücken Sie Strg + c , oder einfach nur q .
Beispielausgabe:
top - 09:55:34 up 20:23, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 188 total, 2 running, 186 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni, 99.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 24512912 total, 23758072 free, 252420 used, 502420 buff/cache KiB Swap: 12387324 total, 12387324 free, 0 used. 23873892 avail Mem
4. /proc/meminfo
Wie Sie den obigen Befehlen entnehmen können, verlassen sich die meisten Dienstprogramme auf /proc/meminfo, um die Menge an freiem und verwendetem Speicher und Auslagerungsspeicher im System zu melden. /proc/meminfo ist eine virtuelle Datei, die dynamische Statistiken über die Speichernutzung durch den Kernel und das System enthält.
Um den Inhalt von /proc/meminfo anzuzeigen, verwenden Sie einen der folgenden Befehle und jeden anderen, den Sie bevorzugen:
cat /proc/meminfo more /proc/meminfo less /proc/meminfo
5. auf Befehl
atop ist ein interaktiver Monitor zur Anzeige der Last auf einem Linux-System, der top ähnlich ist. Es zeigt die Belegung der (aus Performance-Sicht) kritischsten Hardware-Ressourcen auf Systemebene, also CPU, Speicher, Festplatte und Netzwerk. atop ist bei den meisten Linux-Distributionen nicht standardmäßig installiert, wenn Sie es also verwenden möchten, müssen Sie atop manuell installieren.
6. htop-Befehl
htop ist ein interaktiver Prozessbetrachter für Unix-Systeme, der top ähnlich ist, aber detailliertere Informationen liefert. Es ist eine Anwendung im Textmodus (für Konsolen- oder X-Terminals) und erfordert ncurses. htop ist bei den meisten Linux-Distributionen nicht standardmäßig installiert. Wenn Sie es also verwenden möchten, müssen Sie htop manuell installieren.
Physische RAM-Informationen
Wenn Sie mehr über die auf dem System installierten physischen RAM-DIMM-Module erfahren möchten, verwenden Sie dmidecode (DMI Table Decoder), ein Tool zum Speichern des DMI- (oder SMBIOS-) Tabelleninhalts eines Computers in einem für Menschen lesbaren Format. Diese Tabelle enthält eine Beschreibung der Hardwarekomponenten des Systems sowie weitere nützliche Informationen wie Seriennummern und BIOS-Version.
Verwenden Sie einen der folgenden Befehle, um dmidecode zum Anzeigen physikalischer RAM-Module zu verwenden:
$sudo dmidecode --type memory $ sudo dmidecode -t 17
Beispielausgabe:
# dmidecode 3.0 Scanning /dev/mem for entry point. SMBIOS 2.6 present. Handle 0x001C, DMI type 17, 28 bytes Memory Device Array Handle: 0x001A Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 4096 MB Form Factor: DIMM Set: None Locator: CPU0 Bank Locator: DIMM01 Type: Other Type Detail: Other Speed: 1066 MHz Manufacturer: Samsung Serial Number: 88XX8X88 Asset Tag: AssetTagNum01 Part Number: M888MXXXXMM8-MM8 Rank: Unknown