drop_caches
Writing to this will cause thekernel to drop clean caches, dentries and
inodes from memory, causing thatmemory to become free.
To free pagecache:
echo1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
echo2 > /proc/sys/vm/drop_caches
To free pagecache, dentries andinodes:
echo3 > /proc/sys/vm/drop_caches
As this is a non-destructiveoperation and dirty objects are not freeable, the
user should run `sync' first.
http://www.kernel.org/doc/Documentation/sysctl/vm.txt注意:在清空缓存之前使用sync命令同步数据到磁盘
-------------------------------------------------------------------------------------------------------------------------------
# cat /proc/sys/vm/drop_caches
0默认是0,1表示清空页缓存,2表示清空inode和目录树缓存,3清空所有的缓存
# sync
# free -m
total used free shared buffers cached
Mem: 499 323 175 0 52 188
-/+ buffers/cache: 82 416
Swap: 2047 0 2047
# echo 3 > /proc/sys/vm/drop_caches
# free -m //发现缓存明显减少了
total used free shared buffers cached
Mem: 499 83 415 0 1 17
-/+ buffers/cache: 64 434
Swap: 2047 0 2047
#
-------------------------------------------------------------------------------------------------------------------------------