转自于:Linux系统used内存占用很大,而实际系统中个进程并没有占用这么多内存

原因

实际上这是缓存原因导致(即free命令输出中的cached部分),可以通过命令释放

解决

如果我们需要释放所有缓存,执行以下命令:

free -h #查看现有缓存占用量
echo 3 >/proc/sys/vm/drop_caches
free -h #查看缓存是否已经释放

0-3的参数含义:

设置值说明:
0:不释放(系统默认值)
1:释放页缓存
2:释放dentries和inodes
3:释放所有缓存
注意

重启后会恢复原样,可以通过脚本定期执行echo 3 > /proc/sys/vm/drop_caches,释放缓存

Logo

更多推荐