私の知る限り。 RAIDには次の3つのタイプがあります。
BTRFSソフトウェアRAIDを使用することにより、ファイルシステムはドライブについて認識し、チェックサムが間違っているブロックを検出すると、クローン(RAID1/10)またはパリティ(RAID5/6)を使用して、影響を受けるブロックを復元し、エラーを修正できます。 。したがって、ファイルが時間の経過とともに劣化することはありません。
問題は、同じ自己修復メカニズムがハードウェアで機能するのか、BTRFSによる偽のRAIDで機能するのかということです。
影響を受けるブロックのクローン/パリティにアクセスして修正するためにBTRFSが使用できるAPIがあるはずです。オンボードRAIDを使用すると、このようなものが発生する可能性が高くなると思いますが、そのようなものが存在するのか、RAIDごとに実装が異なり、BTRFSで使用できる標準APIがないのかはわかりません。
この質問を理解するのに苦労していますが、とにかく答えることができると思います。
BTRFSはソフトウェアRAIDであり、Linuxに組み込まれているBTRFSソフトウェアによって処理されます。アレイで何らかのメンテナンスを行うには、オペレーティングシステムでbtrfsコマンドを使用する必要があります。
RAIDコントローラを含むハードウェアに関する限り、ディスクは単なる基本ブロックデバイスです。 Linux *のBTRFSソフトウェア以外には、ディスクがアレイの一部であるとは考えられません。
*他のオペレーティングシステムがBTRFSを実装することは可能ですが、少なくとも現時点では、その可能性は低いと思います。
この場合、RAIDとBTRFSは完全に分離されています。ハードウェアミラーを例にとってみましょう。
/dev/raid
と呼びます)。両方のディスク間でそれをミラーリングするのはRAIDコントローラー次第です。/dev/raid
の機能を維持し、残りのディスクへのデータの読み取り/書き込みを行うのはRAIDコントローラーの責任です。また、ディスクの交換時にアレイを再構築するのはRAIDコントローラーの責任です。RAIDの提供方法(ハードウェア/「偽物」またはソフトウェア)に関係なく、同じことが当てはまります。
あまりよく説明していないと思いますが、それは非常に単純な概念です...別のデバイス(またはソフトウェア)がRAIDを処理している場合、RAIDデータを修正するのはBTRFSの責任ではありません。 RAIDアレイで実行されている他のファイルシステムと同じように、単一のディスク上に単一のファイルシステムが表示されます。