Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux清理系统缓存并释放内存

Linux下如何清理系统缓存并释放内存

作者:allures2

Linux清理系统缓存需先执行sync确保数据写入磁盘,再使用drop_caches(0-3)释放内存,最后用free -h查看效果,以释放内存并提升系统响应

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

缓存数据存放位置

当在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching

因此我们很有必要手动清理系统缓存释放内存。

1、我们在清理缓存前应该先sync下

sync

因为系统在操作的过程当中,会把你的操作到的文件资料先保存到buffer中去,因为怕你在操作的过程中因为断电等原因遗失数据,所以在你操作过程中会把文件资料先缓存。

所以我们在清理缓存先要先把buffe中的数据先写入到硬盘中,sync命令

sync

2、输入手动释放内存的命令

echo 3 > /proc/sys/vm/drop_caches 

drop_caches的值可以是0-3之间的数字,代表不同的含义:

0:不释放(系统默认值)
1:释放页缓存
2:释放dentries和inodes

3、此时已经释放了所有缓存

4、free -h 查看内存是否已经释放掉

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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文