如何从Linux上的系统缓存中逐出文件?

前端之家收集整理的这篇文章主要介绍了如何从Linux上的系统缓存中逐出文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

运行性能测试时,文件系统缓存命中或未命中会显着影响测试结果.因此,通常在运行此类测试之前,使用的文件将从系统缓存中逐出.如何在Linux上做到这一点?

澄清:如果可能,解决方案不应要求root权限.

最佳答案
作为超级用户,您可以执行以下操作:

要释放pagecache:

> echo 1>的/ proc / sys目录/ VM / drop_caches

要释放dentries和inode:

> echo 2>的/ proc / sys目录/ VM / drop_caches

要释放pagecache,dentries和inode:

> echo 3>的/ proc / sys目录/ VM / drop_caches

此操作不会“丢失”任何数据(缓存在数据被删除之前写入磁盘),但是,为了确保清除所有缓存,您应首先进行同步.例如.如果你跑,应该清除所有缓存

sync; echo 3 > /proc/sys/vm/drop_caches

正如我所说,只有超级用户(root)可以这样做.

猜你在找的Linux相关文章