どういうわけかBTRFSファイルシステムを作成すると、間違いを犯してRAID1ではなくRAID0で終わりました。しかし、私は274GBのデータを追加した後にのみこれを見つけました(わかりました。本当に馬鹿です)。
Total devices 2 FS bytes used 136.12GiB
devid 1 size 465.76GiB used 137.03GiB path /dev/sdb
devid 2 size 465.76GiB used 137.03GiB path /dev/sdc
A方法が欲しい。これが実際にRAID0であることを確認します(確かだが明確な出力を持つコマンドが見つからず、次にデータを追加する前に確認したい)。 B:可能であれば、データをRAID1に再割り当てしてください。
ベストアンサー1
複数のデバイスに btrfs ファイルシステムを作成する場合、デフォルトでは、RAID0はデータを格納するために使用され、RAID1はメタデータを保存するために使用されます。。この設定を変更するには、mkfsコマンドに引数を渡してデータ(-d)とメタデータ(-m)のRAIDレベルを変更できます。
mkfs.btrfs -d raid1 -m raid1 /dev/sda /dev/sdb
既存のファイルシステムでどのRAIDレベルが使用されているかを確認するには、次のものを使用できます。btrfsユーティリティ:
$ btrfs fi df /mountpoint
Data, RAID1: total=15.00GiB, used=14.65GiB
System, RAID1: total=8.00MiB, used=16.00KiB
Metadata, RAID1: total=1.00GiB, used=15.59MiB
サンプル出力は、データとメタデータに使用されるRAID1を示しています。実行するとbtrfs fi usage /mountpoint
詳細が表示されます。
既存のファイルシステムを別のRAIDレベルに変換できます。balance
コマンドに引数を渡します。
btrfs balance start -dconvert=raid1 -mconvert=raid1 /mountpoint
Balanceはすべてのデータをファイルシステムに書き戻し、パラメータを追加するとデータが書き換えられたときに変換されます。この操作には時間がかかる場合があります。実行してbtrfs balance status /mountpoint
ステータスを確認できます。完了したら、すべてのデータが期待どおりに変換されたことを確認できますbtrfs fi df
。バランシング中に作成されたデータはまだ古い形式である可能性があるため、2番目のバランシングが必要になる場合があります。
汎用コマンドなどのdf
ユーティリティは、btrfs fi show
btrfs自体で実行されるRAID設定を考慮しません。これらのツールはディスクに割り当てられた合計btrfsの量だけを表示し、btrfsがデータを保存するためにどの形式を使用するのかわかりません。これはまた、SAMBAまたは他のツールを介した共有にRAIDが考慮されないことを意味します。詳しくはbtrfs FAQをご覧ください。