1.首先用free工具檢查一下內存的使用情況:
這個是我的linux時時數據
Mem: | 4046824 | 763620 | 3283204 | 9004 | 10284 | 61560 |
-/+buffers/cache: | 691776 | 3355048 | ||||
total | used | free | shared | buffers | cached |
可以看到
要達到釋放緩存的目的,我們首先需要了解下關鍵的配置文件/proc/sys/vm/drop_caches。這個文件中記錄了緩存釋放的參數,默認值為0,也就是不釋放緩存。他的值可以為0~3之間的任意數字,代表着不同的含義:
0 – 不釋放
1 – 釋放頁緩存
2 – 釋放dentries和inodes
3 – 釋放所有緩存
知道了參數后,我們就可以根據我們的需要,使用下面的指令來進行操作。
先使用sync將所有未寫的系統緩存區存儲至磁盤中,包含已經修改的i-node、已延遲的塊I/O和讀寫映射文件,避免在釋放緩存過程中丟失數據。