在分区上禁用Linux读写文件缓存


9

我如何禁用xfs分区上的linux文件缓存(都读写)。

我们在存储RAID原始视频的硬件RAID上有一个xfs分区。多数芽每个都是50-300gb,因此linux缓存的命中率为0.001%。

我尝试了sync选项,但是在处理文件时它仍然会填满缓存。
(每次拍摄约30倍:P)

/ etc / fstab:

/ dev / sdb1 / video xfs sync,noatime,nodiratime,logbufs = 8 0 1

我可以运行debian lenny,如果有帮助。

Answers:


6

有一种完全适合您的用例的解决方案:http : //code.google.com/p/pagecache-mangagement/

签出源代码后:

svn checkout http://pagecache-mangagement.googlecode.com/svn/trunk/ pagecache-mangagement-read-only

问题

make
sudo cp *.so /usr/local/lib/
sudo cp *.sh /usr/local/bin/

然后,您可以启动所需的任何应用程序

pagecache-mangagement.sh <App>

该应用程序不会填满您的缓存!


1
这正是我完成另一项工作所需要的,同样的问题。现在,我的其他程序可以在更有用的地方使用缓存。
2013年


5

这不能完全做到。如果某些应用程序需要此功能,则应对其进行修改以传递O_DIRECT给其open(2)调用。


通过各种第三方应用程序来写入/读取文件... mv,md5sum,samba等。将来我也许可以用自己的C应用程序替换其中的一些...但是据我所知,samba dosnt具有O_DIRECT选项。
2011年

这似乎是我能得到的壁橱。我现在使用O_DIRECT从P2卡复制到HDD,然后再从P2卡复制到md5sum进行检查。这将删除缓存的无用部分,从而仅在HDD上缓存视频文件。
2011年

2

man raw。您可以绑定绕过缓存的原始设备。它有一些限制。我只在CD / DVD设备上使用过它,所以我不知道它对您的效果如何。


原始命令是否以我可以将xfs分区挂载到/ video以便与samba结合的方式绑定设备?文档和Google结果似乎有点含糊。
2011年

你不应该混合它们。我认为您可以改为安装新的原始设备。
基思

好吧,如果有机会,我将在旧的空白驱动器上对此进行测试。
complistic
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.