如何在不淹没 dmesg 的情况下清除 Linux 中的缓存?

如何在不淹没 dmesg 的情况下清除 Linux 中的缓存?

我有一个 shell 脚本,它反复清除缓存

echo 3 > /proc/sys/vm/drop_caches

问题是,这最终会完全淹没 dmesg,因为它运行得太频繁了。

有没有办法在抑制生成的内核消息的同时做到这一点?

答案1

是的,如果您首先 echo 4 ,则不会生成drop_caches后续消息:drop_caches

echo 4 > /proc/sys/vm/drop_caches

该设置是粘性的,将一直保留到系统重新启动为止。

请参阅最后一段内核文档drop_caches。另请注意,正如该文档中所解释的,删除缓存不是一个好主意,并且不应重复执行;也可以看看这次提交

相关内容