Btrfs RAID1:物理的に存在しなくなったディスクドライブを交換するには?

Btrfs RAID1:物理的に存在しなくなったディスクドライブを交換するには?

次の状態のbtrfs RAID1システムがあります。

# btrfs filesystem show
Label: none  uuid: 975bdbb3-9a9c-4a72-ad67-6cda545fda5e
        Total devices 2 FS bytes used 1.65TiB
        devid    1 size 1.82TiB used 1.77TiB path /dev/sde1
        *** Some devices missing

紛失したデバイスは、完全に故障してオペレーティングシステムに認識されないディスクドライブです。故障したディスクを取り除き、リサイクルのために送った。

これで、/dev/sddに新しいディスクがマウントされました。オンラインで検索しても、この状況の説明が見つかりません(検索語を誤って選択しましたか?)。オペレーティングシステムが障害が発生したディスクにアクセスし続けている間にRAIDシステムを回復する方法の多くの例があります。 btrfs replaceこのコマンドにはソースディスクが必要です。

私は以下を試しました:

# btrfs replace start 2 /dev/sdd /mnt/brtfs-raid1-b
# btrfs replace status /mnt/brtfs-raid1-b
Never started

エラーメッセージはありませんが、ステータスには開始されていないと表示されます。私の試みに何が問題なのかわかりません。

私はUbuntu 16.04 LTS Xenial Xerus、Linuxカーネル4.4.0-57-genericを実行しています。

アップデート#1

「非バックグラウンドモード(-B)」でコマンドを実行すると、以前に見たことのないエラーが表示されます。

# btrfs replace start -B 2 /dev/sdd /mnt/brtfs-raid1-b                                                                                                                     
ERROR: ioctl(DEV_REPLACE_START) failed on "/mnt/brtfs-raid1-b": Read-only file system

/mnt/brtfs-raid1-bROがインストールされました(読み取り専用)。選択の余地はありません。 Btrfsは、残りのディスクを読み書き可能(RW)としてマウントすることを許可しません。ディスクRWをマウントしようとすると、システムログに次のエラーが表示されます。

BTRFS: missing devices(1) exceeds the limit(0), writeable mount is not allowed

ROモードでは何もできないようです。ディスクを交換、追加、または取り外すことはできません。ただし、ディスクをRWにマウントする方法はありません。どんなオプションがありましたか?

単純ディスクに障害が発生しても、状況はこのように複雑にならないでください。システムは引き続きRWを実行し、ドライブ障害について警告する必要があります。アプリケーションがまだディスクの問題を認識していないまま、新しいディスクを挿入してその中のデータを再コピーできるようにする必要があります。これが正しいRAIDです。

ベストアンサー1

replace実行するにはファイルシステムをマウントする必要がありますrw

ダウングレードされたBTRFS RAID1ファイルシステムではそして1つだけrwマウントされたファイルシステムを使用する機会があります-o degraded:

   degraded
       (default: off)

       Allow mounts with less devices than the RAID profile constraints
       require. A read-write mount (or remount) may fail when there are
       too many devices missing, for example if a stripe member is
       completely missing from RAID0.

マウントした後、欠落しているデバイスをrw見つけます。devid

btrfs filesystem show /mountpoint

紛失した機器を新しい機器と交換してください。

btrfs replace start -B <devid> /dev/new-disk /mountpoint

ヘルスチェック:

btrfs replace status /mountpoint

replace再起動すると復元されます

おすすめ記事