1
コンテンツを優先してファイルのメタデータをキャッシュするようにLinuxを構成する方法は?
ファイルシステムメタデータのキャッシュにほとんどのRAMを使用するようにシステムを設定したいと思いますが、読み取り/書き込みキャッシュとファイルのプリフェッチに適度な量だけを使用します。理想的には、実際にファイルを開くまでディスクをスピンアップせずに(RAMに収まる限り)ファイルシステムを閲覧できるようにしたいと思います。 詳細は次のとおりです。 自家製のファイルサーバーがあります。約9TBのLVMボリュームに5つのディスクがありますが、RAMは4GBしかありません。サーバーはファイルを提供するために他のことをほとんど行わないため、RAMのほとんどはキャッシュに使用されます。(「無料」は、キャッシュに使用される3.9Gのうち3.4Gを報告します。) サーバーは私の寝室にあり、すべてのディスクが回転していると、静かなときに迷惑になるほどのノイズが発生します。(シークノイズではなく、単なる回転ノイズです。ディスクはさまざまなメーカーやモデルのものであり、回転速度のわずかな違いが干渉の原因になると思います。サブヘルツ周期のわずかなノイズ。)だから、私はほとんどの時間ディスクをスピンダウンするようにサーバーを設定しました。 もちろん、ファイルマネージャーでフォルダーを開いたときにディスクがスピンダウンした場合、そのフォルダーを持つディスクのいずれかがスピンアップするまでに遅延があります。それは大したことではありません。しかし、LVMが別のディスク上の各サブフォルダーのメタデータを拡散した場合、私が見ている場所によっては、連続して数回発生する可能性があります。 私は、Linuxのほとんどがキャッシュをファイルの内容で満たし、おそらくプリフェッチされたデータでいっぱいになっていると思います。キャッシュは、スムーズな再生を保証するために数MBを超えるとあまり役に立ちません。映画を見ただけなら、もうすぐまた見ないでしょう。私の場合、数MBを超えると、プリフェッチが発生してもまったく役に立ちません。 しかし、ほとんどのファイルシステムメタデータ、少なくとも既にアクセスした部分をキャッシュできるようにするには、4GBで十分だと思うでしょう。睡眠。 ファイルを開くときにまだ遅延がありますが、それでも問題ありません。「クリック; 待ちます。クリック; 待ちます。クリック; 待ちます。演奏する; 「クリック」で視聴します。クリック; クリック; 演奏する; 待ちます。見る"。前者は非常にイライラします。後者はほとんど期待されています。 ノート: 問題があれば、カーネルは3.2、OSはDebian、ボリュームはlvm2、FSはext4です。 スピンダウンの唯一の理由は、夜間の騒音です。それ以外の場合、サーバーは継続的に実行されます。(私はそれを妥当な低消費電力にしました。)スピンダウンの遅延は時刻によって異なります。 ハードディスクはメディア専用です。OSは、別の(小さな)フラッシュドライブ上にあります。(これは、スピンアップの遅延がデータに起因するものであることを意味します。何らかの理由で何かが必要だったというだけではありません/usr。どうにかして問題を解決できる場合は、数GBを節約できます。 パフォーマンスに対する合理的な影響は大したことではありません。とにかく、ディスクは私のネットワークよりも高速です。