写点什么

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

作者:入门小站
  • 2021 年 11 月 15 日
  • 本文字数:563 字

    阅读完需:约 2 分钟

当 linux 频繁读取文件后,物理内存会很快被用完,当程序结束后,内存不会被正常释放,而是一直 caching,因此有必要手动清理系统缓存释放内存。

sync

操作系统在运行过程中,会把访问到的文件放到 buffer 中。为了避免断电,等故障造成数据丢失,我们需要把 buffer 中的缓存数据写入到磁盘


> sync;sync;sync
复制代码


手动执行 sync 命令(描述:sync 命令运行 sync 子例程。如果必须停止系统,则运行 sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件

手动释放内存的命令

> echo 3>/proc/sys/vm/drop_caches
复制代码


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


  • 0:不释放(系统默认值)

  • 1:释放页缓存

  • 2:释放 dentries 和 inodes

查看内存

> free -h
复制代码


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

恢复默认设置

缓存可以提升系统的运行效率,如果发现系统内存经常不够用,应该考虑添加内存,而不是经常清理


> echo 0>/proc/sys/vm/drop_caches
复制代码


原文链接:https://rumenz.com/rumenbiji/linux_drop_caches.html

微信公众号:入门小站

发布于: 5 小时前阅读数: 3
用户头像

入门小站

关注

还未添加个人签名 2020.01.18 加入

还未添加个人简介

评论

发布
暂无评论
linux下清理系统缓存并释放内存