パーティションのLinux読み取りおよび書き込みファイルキャッシュを無効にする


9

xfsパーティションでLinuxファイルキャッシュを無効にするにはどうすればよいですか(両方とも書き込みを読み取ります)。

RAW HDビデオを保存するハードウェアRAID上にxfsパーティションがあります。ほとんどのシュートはそれぞれ50〜300 GBなので、Linuxキャッシュのヒット率は0.001%です。

同期オプションを試しましたが、ファイルをコピーするとキャッシュがいっぱいになります。
(撮影あたり約30倍以上:P)

/ etc / fstab:

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

それが役立つなら、私はdebian lennyを実行しています。

回答:


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年

6

NOCACHE現在のバッファキャッシュを損なうことから、特定のコマンドを防止:このツールは、同様の目的のために設計されています。./nocacheコマンドの前に追加するだけです:

./nocache cp -a ~/ /mnt/backup/home-$(hostname)

同様のツールであるpagecache-mangagement-rmetzgerが指摘しているように、任意のアプリケーションのページキャッシュ使用の管理を許可するツールは、2008年と同じ状態にあります。もちろん、良いことも悪いこともあり、またはミックス:)私は直接比較をしていませんが、私はnocacheの人々に1つを求めました


5

これはきれいに行うことはできません。特定のアプリケーションでこれが必要な場合はO_DIRECTopen(2)呼び出しに渡すように変更する必要があります。


ファイルは、さまざまなサードパーティのアプリケーション(mv、md5sum、sambaなど)で書き込まれたり読み取られたりします。将来的には、これらの一部を自分のCアプリに置き換えることができるかもしれません...しかし、私が知る限り、sambaにはO_DIRECTオプションがありません。
complistic

これは私が入手できるクローゼットのようです。O_DIRECTを使用してP2カードからHDDにコピーし、次にP2カードからmd5sumにコピーして確認します。これにより、不要なキャッシュの半分が削除され、ビデオファイルがHDDにキャッシュされる唯一のものになります。
包括的な

2

man raw。キャッシュをバイパスするrawデバイスをバインドできます。いくつかの制限があります。私はこれをCD / DVDデバイスでのみ使用したので、どれだけうまく機能するかわかりません。


rawコマンドは、sambaで使用するためにxfsパーティションを/ videoにマウントできる方法でデバイスをバインドしますか?ドキュメントとグーグルの結果は少しあいまいなようです。
complistic

それらを混ぜてはいけません。代わりに新しいrawデバイスをマウントできると思います。
キース

機会があれば、古い空のドライブでこれをテストします。
complistic
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.