linux下清理缓存,以释放内存

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下清理缓存,以释放内存相关的知识,希望对你有一定的参考价值。

[[email protected] src]# free
             total       used       free     shared    buffers     cached
Mem:       1920472    1845892      74580        180     462708     338068
-/+ buffers/cache:    1045116     875356
Swap:            0          0          0
[[email protected] ~]# sync
[[email protected] ~]# echo 1 > /proc/sys/vm/drop_caches
[[email protected] ~]# echo 2 > /proc/sys/vm/drop_caches
[[email protected] ~]# echo 3 > /proc/sys/vm/drop_caches
[[email protected] ~]# free
             total       used       free     shared    buffers     cached
Mem:       1920472    1015300     905172        184        992      46960
-/+ buffers/cache:     967348     953124
Swap:            0          0          0
[[email protected] ~]# 

 

找了几天没找到是哪个应用占用的内存.

使用top命令分别查了tomcat, mysql, mongodb, nginx, fastdfs, redis...等的应用, 均未发现占用忒高的情况.

无奈, 在网上看到了上面的方法, 记录下来, 先救急用吧.

说明:

  切记释放缓存前先执行sync命令, 防止数据丢失.

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

 

扫盲:

total——总物理内存
used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存
free——完全未被使用的内存
shared——应用程序共享内存
buffers——缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加)
cached——缓存,用于已打开的文件

 

以上是关于linux下清理缓存,以释放内存的主要内容,如果未能解决你的问题,请参考以下文章

linux下清理系统缓存并释放内存

如何为linux释放内存和缓存

linux 内存清理/释放命令

linux 内存清理/释放命令

linux中手动释放缓存的方法

linux 中缓存怎样清除