すべてを書き換えずに、すでに RAID1 でクローン化された 2 つのハードディスクを再構成するにはどうすればよいですか?

すべてを書き換えずに、すでに RAID1 でクローン化された 2 つのハードディスクを再構成するにはどうすればよいですか?

まず既存のハード ディスクのクローンを作成し、現在 2 つの正確なコピーがあります。次に、それらを使用して RAID1 をセットアップしますが、バックアップ用の他のストレージがなく、コピーが 1 つしかないリスクを冒したくないため、追加したディスクを書き換えないようにします。

私が間違っていなければ、RAID 構成がまったくない状態から に/dev/sdb​​追加する通常の手順は次のようになります。/dev/sda/dev/sda

btrfs device add /dev/sdb /
btrfs balance start -dconvert=raid1 -mconvert=raid1

しかし、btrfs-device のマニュアルには次のように書かれています:

該当する場合、デバイスを追加する前にデバイス全体の破棄 (TRIM) 操作が実行されます。blkid(8) によって検出された既存のファイルシステムを持つデバイスはデバイスの追加を阻止し、強制する必要があります。この操作は即座に実行され、既存のデータには影響しません。

どのように実行すればよいですか?

答え1

btrfs のバイト単位のクローンは非常に危険です。こちらをお読みください:

https://btrfs.wiki.kernel.org/index.php/Gotchas#ブロックレベルのデバイスのコピー

既存の btrfs を btrfs RAID1 に変換する唯一の方法は、質問で言及したコマンドを実行することですが、その前に、wipefs -a /dev/sdX拡張する btrfs をマウントする必要があり、その btrfs のコピーを含むブロック デバイスがカーネルに表示されている間は、マウントを試みるべきではないため、ドライブの 1 つ ( ) を手動で消去する必要があります。
ある時点で誤ってこれを行った場合、コピーのいずれかまたは両方が破損している可能性があります。そのため、拡張する btrfs に対して少なくともスクラブと読み取り専用チェックを実行してください (もちろん、このために他のドライブをシステムから切断してください)。

btrfs に 50% を超える空き領域がある場合は、変換中に 2 つのデバイスに少なくとも 2 つのコピーを常に保持する方法でそれらを調整できる可能性がありますが、フル ドライブの btrfs の場合は、パーティションに比べてさらに困難になります。

関連情報