云服务器
centos删除 buff/cache缓存的操作方法
2025-07-20 09:52  点击:0

在Linux系统中,free命令常被用来查看内存占用情况。所示,我的系统中缓存(cache)占用了将近9G的内存。在某些情况下,比如需要释放内存空间或者进行性能测试时,清理这些缓存是很有必要的。以下是如何清理缓存的方法

首先,我们需要提升权限以执行后续操作。打开终端,输入以下命令

bash
sudo su


接下来,我们可以通过向/proc/sys/vm/drop_caches文件写入特定的值来清理缓存。这里有三种方法

1. 释放页缓存(Page cache)
bash
echo 1 \u003e /proc/sys/vm/drop_caches

这将清理页缓存,但不影响dentryinode缓存。

2. 释放dentries和inodes缓存
bash
echo 2 \u003e /proc/sys/vm/drop_caches

这将清理dentries和inode缓存,但不会清除页缓存。

3. 释放所有缓存
bash
echo 3 \u003e /proc/sys/vm/drop_caches

这是最彻底的方法,将清理所有缓存,包括页缓存、dentries缓存和inode缓存。

执行上述命令后,你会发现缓存已经被清理,内存占用量显著降低。需要注意的是,这些操作在生产环境中应谨慎使用,因为它们会导致系统性能暂时下降。通常,这些命令会在几秒钟内完成,并且不需要重启系统。

请注意,清理缓存可能会导致正在进行的系统操作中断,因此在进行此类操作之前,应确保系统处于稳定状态,并且了解可能的后果。此外,这些命令仅适用于Linux系统,且需要root权限才能执行。