美文网首页linuxkankan(good)
【Linux】Linux服务器缓存清理释放

【Linux】Linux服务器缓存清理释放

作者: Bogon | 来源:发表于2023-04-25 10:49 被阅读0次
$ free -h
              total        used        free      shared  buff/cache   available
Mem:           7.6G        3.2G        471M        395M        3.9G        3.6G
Swap:            0B          0B          0B

image.png
# root 用户执行
sync && echo 1 > /proc/sys/vm/drop_caches
sync && echo 2 > /proc/sys/vm/drop_caches
sync && echo 3 > /proc/sys/vm/drop_caches
image.png

这三个命令都是用于清空Linux系统中的缓存,以便释放内存空间。

Linux上的sync命令是用来将文件系统中的数据同步到磁盘中,确保数据的持久化存储,避免数据丢失或损坏。

当我们对文件系统进行修改时,数据并不是实时写入磁盘的,而是先缓存在内存中,等到一定时间或缓存空间满了再写入磁盘。但是如果在这个过程中系统崩溃了,这些缓存中的数据就会丢失,导致文件系统的不一致性或数据的损坏。因此,使用sync命令可以将缓存中的数据立即写入磁盘,保证数据的安全性。

sync命令的使用非常简单,只需要在命令行中输入“sync”即可。
在大多数情况下,我们不需要手动使用sync命令,因为Linux系统会自动定期执行sync操作,确保数据的安全性。但是在一些特殊情况下,比如在进行重要文件的修改或备份操作时,可以手动执行sync命令,以确保数据的及时保存。

第一个命令“sync && echo 1 > /proc/sys/vm/drop_caches”表示先执行sync命令,将所有缓存数据写入磁盘中,然后将“1”写入到/proc/sys/vm/drop_caches文件中,表示清空页缓存。

第二个命令“sync && echo 2 > /proc/sys/vm/drop_caches”表示先执行sync命令,将所有缓存数据写入磁盘中,然后将“2”写入到/proc/sys/vm/drop_caches文件中,表示清空目录缓存和页缓存。

第三个命令“sync && echo 3 > /proc/sys/vm/drop_caches”表示先执行sync命令,将所有缓存数据写入磁盘中,然后将“3”写入到/proc/sys/vm/drop_caches文件中,表示清空目录缓存、页缓存和inode缓存。

需要注意的是,这些命令可能会导致系统变慢,因为它们会强制清空缓存,而下次读取相同的数据时需要重新加载到缓存中,会消耗更多的时间和资源。因此,建议在必要时才使用这些命令。

参考

Linux内存占用和释放案例分析
https://zhuanlan.zhihu.com/p/521290111
https://cloud.tencent.com/developer/article/1701200?from=article.detail.1861892

echo N>/proc/sys/vm/drop_caches清理缓存
https://blog.csdn.net/XD_hebuters/article/details/79608136

相关文章

  • crontab定时任务

    使用crontab配合shell脚本定时清理缓存 Linux服务器用一段时间就会出现buff/cache内存占用过...

  • Linux 缓存释放

    释放缓存前需要使用sync命令,同步缓存。 [sopho@ ~]# echo 1 > /proc/sys/vm/d...

  • \boot没有空间 + ubuntu清理

    1, 这三个命令主要清理升级缓存以及无用包的 2,清理opera/firefox的缓存文件: 3,清理Linux下...

  • 在Ubuntu和Linux Mint上释放空间的7种简单方法

    Linux系统空间不足?您可以通过以下几种方式清理系统,释放Ubuntu和其他基于Ubuntu的Linux发行版上...

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

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

  • linux释放缓存

    linux一般运行项目一段时间之后,会产生很多缓存,如果一直不释放,一方面是对资源使用的浪费,另一方面会由于内存不...

  • Linux清理cache缓存

    当cache缓存占用太大,服务起不来,需要查看清理缓存 查看缓存:free -m 输入运行下面一行:echo 3 ...

  • Linux清理cache缓存

    当cache缓存占用太大,服务起不来,需要查看清理缓存 查看缓存:free -m 输入运行下面一行:echo 3 ...

  • adb实用命令

    截屏: windows批处理命令: linux(MAC)命令: 安装APK: 卸载apk: 清理app缓存: 安卓...

  • Linux 查看清理cache

    Linux 查看清理cache 因为LINUX的内核机制,一般情况下不需要特意去释放已经使用的cache。这些ca...

网友评论

    本文标题:【Linux】Linux服务器缓存清理释放

    本文链接:https://www.haomeiwen.com/subject/dobsjdtx.html