一、cached主要负责缓存文件使用, 日志文件过大形成cached区内存增大把内存占用完 .node
Free中的buffer和cache:(它们都是占用内存):
buffer : 做为buffer cache的内存,是块设备的读写缓冲区
cache: 做为page cache的内存, 文件系统的cache
若是 cache 的值很大,说明cache住的文件数不少。缓存
Linux 内存管理作了不少精心的设计,除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换),还采起了两种主要Cache方式:Buffer Cache和Page Cache,目的就是为了提高磁盘IO的性能。从低速的块设备上读取数据会暂时保存在内存中,即便数据在当时已经再也不须要了,但在应用程序下一次访问该数据时,它能够从内存中直接读取,从而绕开低速的块设备,从而提升系统的总体性能。而Linux会充分利用这些空闲的内存,设计思想是内存空闲还不如拿来多缓存一些数据,等下次程序再次访问这些数据速度就快了,而若是程序要使用内存而系统中内存又不足时,这时不是使用交换分区,而是快速回收部分缓存,将它们留给用户程序使用。性能
所以,能够看出,buffers/cached真是百益而无一害,真正的坏处可能让用户产生一种错觉——Linux耗内存!其实否则,Linux并无吃掉你的内存,只要还未使用到交换分区,你的内存所剩无几时,你应该感到庆幸,由于Linux 缓存了大量的数据,也许下一次你就从中受益!设计
二、手动释放cached日志
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程序