GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So löschen Sie den Speichercache in Linux

Manchmal geht dem System der Arbeitsspeicher aus, weil ein riesiger Arbeitsspeicher von zwischengespeicherten Objekten verwendet wird. In diesem Fall müssen Sie entweder den physischen Speicher im System vergrößern oder mehr Auslagerungsspeicher hinzufügen. Sie können den Kernel auch anweisen, den RAM-Speichercache auf dem System zu löschen, indem Sie eine Zahl in /proc/sys/vm/drop_caches hinzufügen Datei.

Es ist sicher, aber nicht empfehlenswert, den Speichercache auf einem Linux-System zu löschen. Das Löschen des Arbeitsspeicher-Cache in Linux-Systemen verlangsamt die Systemleistung, da das Lesen von Dateien aus dem Arbeitsspeicher viel schneller ist als von der persistenten Festplatte. Da es zwischengespeicherte Objekte aus dem Speicher verwirft, kann es eine erhebliche Menge an E/A und CPU kosten, um die gelöschten Objekte neu zu erstellen. Dieses Tutorial hilft Ihnen, den Speichercache auf Linux/Unix-Systemen über die Befehlszeile zu löschen.

So löschen Sie den Speichercache unter Linux

Es gibt drei Optionen, um den Speichercache in Linux zu leeren. Wählen Sie eine der folgenden Optionen, um den Cache-Speicher des Linux-Systems gemäß Ihren Anforderungen zu leeren.

  • Lösche PageCache, Dentries und Inodes im Cache-Speicher. Kurz gesagt, es wird den gesamten Speichercache löschen:
    sync; echo 3 | sudo tee /proc/sys/vm/drop_caches 
    
  • Dentrys und Inodes nur im Cache-Speicher löschen
    sync; echo 2 | sudo tee /proc/sys/vm/drop_caches 
    
  • Seiten-Cache nur im Cache-Speicher löschen
    sync; echo 1 | sudo tee /proc/sys/vm/drop_caches 
    

Hier der erste Befehl sync wird verwendet, um alle In-Memory-Cache-Dateien mit dem persistenten Speicher zu synchronisieren. Der nächste Befehl wird mit einem „;“ getrennt. Sobald der erste Befehl abgeschlossen ist, wird der nächste Befehl ausgelöst, um den Cache-Speicher zu löschen.

Planen Sie das Löschen des Speicher-Cache mit Crontab

Sie können auch einen Corn-Job planen, um den Cache regelmäßig zu leeren. Planen Sie Folgendes in der System-Crontab, um den Cache-Speicher in regelmäßigen Abständen automatisch zu leeren.

Öffnen Sie ein Terminal und führen Sie den Befehl „crontab -e“ aus, um crontab zu bearbeiten:

crontab -e 

Fügen Sie den folgenden Eintrag an die Datei an:

0 10 * *  * sync; echo 3 | sudo tee /proc/sys/vm/drop_caches

Der obige Cron wird stündlich ausgeführt und leert den Speicher-Cache auf Ihrem System.

Auf den Produktionsservern wird nicht empfohlen, einen Befehl zum Löschen des Caches zu planen. Dies kann zu Datenbeschädigung oder Datenverlust führen. Passen Sie also auf, bevor Sie den obigen Befehl in einer Produktionsumgebung ausführen.

So finden Sie Cache-Speicher in Linux

Verwenden Sie kostenlos Befehl, um die Verwendung des Cache-Speichers durch das Linux-System herauszufinden. Die Ausgabe des freien Befehls sieht wie folgt aus

free -m 
Output 
             total       used       free     shared    buffers     cached
Mem:         16050      15908        142          0        120      12953
-/+ buffers/cache:        834      15216
Swap:            0          0          0

Hier zeigt die letzte Spalte den zwischengespeicherten Speicher (12953 MB) auf einem Linux-System. Das -m Option wird verwendet, um Ausgabe-MBs anzuzeigen.


Linux
  1. So löschen Sie den Bash-Verlauf unter Linux

  2. So löschen Sie den Webbrowser-Cache von der Befehlszeile in Linux

  3. So löschen Sie Speicherpuffer und Cache in Linux

  4. Wie lösche ich den Cache in Firefox?

  5. So löschen Sie den Buffer/Pagecache (Festplatten-Cache) unter Linux

So löschen Sie den RAM-Speicher-Cache, den Puffer und den Swap-Speicher unter Linux

So deaktivieren Sie Swap dauerhaft unter Linux

So leeren Sie den DNS-Cache unter Linux

Wie funktioniert Swap-Speicher in Linux?

So löschen Sie den DNS-Cache unter Ubuntu

Wie lösche ich den DNS-Cache unter Linux?