Warum zeigt mein Server
total used free shared buffers cached
Mem: 12286456 11715372 571084 0 81912 6545228
-/+ buffers/cache: 5088232 7198224
Swap: 24571408 54528 24516880
Ich habe keine Ahnung, wie der Speicher unter Linux berechnet wird. Ich denke, es heißt, dass 5088232 verwendet wird, wo 7198224 frei ist, was bedeutet, dass es tatsächlich 5 GB RAM verbraucht?
linux
memory
memory-usage
virtual-memory
Muahmmad Zeeshan
quelle
quelle
Antworten:
Bedeutung der Werte
Die erste Zeile bedeutet:
total
: Ihr gesamter (physischer) RAM (mit Ausnahme eines kleinen Teils, den der Kernel beim Start permanent für sich reserviert); deshalb zeigt es ca. 11,7 GiB und nicht 12 GiB, die Sie wahrscheinlich haben.used
: Vom Betriebssystem verwendeter Speicher.free
: Speicher wird nicht verwendet.total
=used
+free
shared
/buffers
/cached
: Diese Speichernutzung für bestimmte Zwecke zeigen, werden diese Werte in dem Wert für enthaltenused
.Die zweite Zeile gibt die angepassten Werte der ersten Zeile an. Es gibt den ursprünglichen Wert für
used
minus die Summebuffers+cached
und den ursprünglichen Wert fürfree
plus die Summe anbuffers+cached
, daher der Titel. Diese neuen Werte sind häufig aussagekräftiger als die der ersten Zeile.Die letzte Zeile (
Swap:
) gibt Auskunft über die Auslastung des Auslagerungsspeichers (dh Speicherinhalte, die vorübergehend auf die Festplatte verschoben wurden).Hintergrund
Um zu verstehen, was die Zahlen bedeuten, benötigen Sie Hintergrundinformationen zum Subsystem für virtuellen Speicher (VM) unter Linux. Nur eine kurze Version: Linux wird (wie die meisten modernen Betriebssysteme) immer versuchen, freien Arbeitsspeicher für das Caching zu verwenden, daher
Mem: free
wird es fast immer sehr niedrig sein. Daher wird die Zeile-/+ buffers/cache:
angezeigt, da angezeigt wird, wie viel Speicher frei ist, wenn Caches ignoriert werden. Caches werden automatisch freigegeben, wenn der Speicher knapp wird, sodass sie eigentlich keine Rolle spielen.Ein Linux-System hat sehr wenig Arbeitsspeicher, wenn der
free
Wert in der-/+ buffers/cache:
Zeile niedrig wird.Weitere Details zur Bedeutung der Zahlen finden Sie zB in den Fragen:
Änderungen in procps 3.3.10
Beachten Sie, dass die Ausgabe von
free
in procps 3.3.10 (veröffentlicht im Jahr 2014) geändert wurde. Die gemeldeten Spalten lauten jetzt "total", "used", "free", "shared", "buff / cache", "available" und die Bedeutung einiger Werte wurde geändert, hauptsächlich, um den Kernel des Linux-Betriebssystems besser zu berücksichtigen Zwischenspeicher.Siehe Debian-Fehlerbericht # 565518 für die Motivation und Was bedeuten die Änderungen in der
free
Ausgabe von 14.04 bis 16.04? Für weitere Informationen.quelle
$ free -h
total used free shared buff/cache available
Mem: 3.4G 585M 152M 11M 2.6G 2.5G
Swap: 4.0G 84M 3.9G
total = used + free + buff/cache
Wenn Sie eine noch einfachere, schrittweise Erklärung benötigen, lesen Sie http://thoughtsbyclayg.blogspot.com/2008/09/display-free-memory-on-linux-ubuntu.html. Diese Erklärung hat mir sehr geholfen .
quelle
Die Puffer / Cache-Zeile zeigt an, wie viel Speicher von Programmen verwendet wird (erste dieser Spalten) und wie viel Speicher für Programme zur Verfügung steht (zweite Spalte). Es ist eine ziemlich esoterische Zahl und nicht etwas, auf das man in der Praxis wirklich viel schauen würde.
quelle