那么我们在使用Linux系统时,涉及到的内存管理问题,该如何进行呢?本文将详细讲解linux内存清理和释放命令。
1.free -m 查看内存的使用情况,-m表示单位是兆
2.echo 1 > /proc/sys/vm/drop_caches
清理前内存使用情况:
free -m
free -m命令结果说明
第一行:全局角度描述系统使用的内存状况
total——总物理内存 used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存 free——完全未被使用的内存 shared——应用程序共享内存 buffers——缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加) cached——缓存,用于已打开的文件 note: total=used+free used=buffers+cached (maybe add shared also)
第二行:描述应用程序的内存使用
前个值表示-buffers/cache——应用程序使用的内存大小,used减去缓存值
后个值表示+buffers/cache——所有可供应用程序使用的内存大小,free加上缓存值
-buffers/cache=used-buffers-cached +buffers/cache=free+buffers+cached
第三行:表示swap的使用
used——已使用 free——未使用
释放缓存前同步:
sync
释放所有缓存:
echo 3 > /proc/sys/vm/drop_caches
释放缓存数字参数说明
0 – 不释放 1 – 释放页缓存 2 – 释放dentries和inodes 3 – 释放所有缓存