How to Clear the Linux Memory Cache
Clearning the Linux Memory cache can be a quick way to regain system resources. Writing to the drop_cache process will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.
- To free pagecache:# echo 1 > /proc/sys/vm/drop_caches
- To free dentries and inodes:# echo 2 > /proc/sys/vm/drop_caches
- To free pagecache, dentries and inodes:# echo 3 > /proc/sys/vm/drop_caches
As this is a non-destructive operation, and dirty objects are not freeable, the user should run “sync” first in order to make sure all cached objects are freed.
Example – Memory before:
[root@server ~]# free -m
total used free shared buffers cached
Mem: 7860 7040 820 0 343 5076
-/+ buffers/cache: 1620 6240
Swap: 3999 0 3999
[root@server ~]# sync
[root@server ~]# echo 3 > /proc/sys/vm/drop_caches
Memory after:
[root@server ~]# free -m
total used free shared buffers cached
Mem: 7860 1279 6581 0 0 33
-/+ buffers/cache: 1245 6615
Swap: 3999 0 3999
as simple as possible but helped enormously 🙂