在Linux下经常回遇到buff/cache内存占用过多问题,尤其是使用云主机的时候最严重,有域很多是虚拟内存,因此如果buff/cache占用过大的,free空间内存就很少,影响使用;
通常的内存关系是:
普通机器:total=used+free
虚拟机器:total=used+free+buff/cache
比如说用阿里云云主机,就是total=used+free+buff/cache
这个时候可以看到buff/cache占用的内存非常大,
这个时候可以使用一下命令去清除一下cache内存
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
drop_caches的值可以是0-3之间的数字,代表不同的含义: 0:不释放(系统默认值) 1:释放页缓存 2:释放dentries和inodes 3:释放所有缓存
一般情况下执行 echo 1 就能释放大部分缓存空间!
参考文章:https://zhuanlan.zhihu.com/p/459398220