linux buffer/cache手动释放
内存使用情况
[root@tst-yangsq2-2 ~]# free -h total used free shared buff/cache available Mem: 7.6G 1.0G 1.2G 239M 5.5G 6.1G Swap: 2.0G 146M 1.9G
1.运行 sync 将 dirty 的内容写回硬盘
[root@tst-yangsq2-2 ~]# sync
2.通过修改 proc 系统的 drop_caches 清理free的cache
[root@tst-yangsq2-2 ~]# echo 3 > /proc/sys/vm/drop_caches
drop_caches的详细文档如下:
Writing to this 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 notfreeable, the user should run "sync" first in order to make sure allcached objects are freed. This tunable was added in 2.6.16.
* echo 0 > /proc/sys/vm/drop_caches
恢复默认设置