使用free -m 查看系统使用的内存情况:
# free -m
total used free shared buffers cached
Mem: 7871 7060 811 0 153 5278
-/+ buffers/cache: 1629 6242
Swap: 8191 16 8175
可以看到cached部分的内存占用量高达5G,这部分内存是可以手工释放的,方法如下:
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
注意:在释放cached内存之前请用sync命令将文件系统buffer里面的数据flush到磁盘上
释放之后使用free -m 查看结果如下:
total used free shared buffers cached
Mem: 7871 1357 6514 0 0 30
-/+ buffers/cache: 1325 6546
Swap: 8191 16 8175