Skip to main content

Arbeitsspeicher im Cache freigeben

Einleitung

Wenn du einen Linux Server länger in Betrieb hast, kann es sein das dein Monitoring System anschlägt und meldet das kein Arbeitsspeicher mehr frei ist. Der Arbeitsspeicher befindet sich dennoch nur im Cache. 

Durchführung geschieht auf eigene Gefahr!


Erklärung

Wenn ein Linux System arbeitet, schreibt das System häufig verwendete Dateien und Daten in den Cache. So muss nicht immer die Festplatte verwendet werden. Dieses ermöglicht eine höhere Geschwindigkeit des Servers. 

Der Cache beeinträchtigt das Linux System aber nicht weiter, wenn das Linux System merkt das es mehr Arbeitsspeicher braucht, gibt es automatisch mehr Arbeitsspeicher frei. 


Befehl

Mithilfe des folgenden Befehls wird der Cache wieder freigegeben. Der Server nimmt dann nur den Arbeitsspeicher den er momentan braucht.

sync && echo 3 > /proc/sys/vm/drop_caches

Falls du sehen möchtest wie sich die Auslastung des Arbeitsspeichers verändert, kannst du jeweils ein free ansetzen. Dieses zeigt an wie viel Arbeitsspeicher der Server gesamt, benutzt und frei hat. Dieses wird dann wieder in den Hauptspeicher und SWAP aufgegliedert. 

free && sync && echo 3 > /proc/sys/vm/drop_caches && free

Erklärung Befehl

Der free Befehl sorgt dafür eine Rückmeldung über den freien, verwendeten und gesamten Arbeitsspeicher anzuzeigen.

sync schreibt die Cache Dateien auf die Festplatte.

echo 3 > /proc/sys/vm/drop_caches schreibt die Zahl 3 in die Datei drop_caches was zur Folge hat, das der Cache wieder freigegeben wird.