1つのデバイスでソフトウェアRAID 1を作成できますか?

1つのデバイスでソフトウェアRAID 1を作成できますか?

ミラーリングしたいディスクがあります。このディスクをと呼びますsda。同じサイズの別のディスクを購入しましたsdb。名前がsdaあり、sdbパーティションがsda1ですsdb1

攻撃台を作成するときは、きれいにクリアして再起動したくないので、sdaミラーリングを開始するだけですsdb

mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=1 /dev/sda1

...sdbディスクなしでアレイを作成したら、次のコマンドを実行します。 (このステップをどのように実装するのかわからないので、次のコマンドを大声で叫ぶつもりです。)

mdadm /dev/md0 --add /dev/sdb1

コメントのsdb1形式が次のように仮定します。sda1

可能ですか?

ベストアンサー1

タイトルの質問に対する簡単な答えは「はい」です。しかし、実際にやりたいことは、次のステップ、つまり既存のデータをミラーリングすることです。

既存のディスクを変換することは可能ですが、上記のようにメタデータの場所により危険です。新しいディスクで空の(破損した)イメージを作成し、既存のデータをここにコピーすることをお勧めします。その後、機能しない場合は、ミラー化されていない元の状態に再起動します。

まず、/dev/sdb1不足しているドライブがある新しいドライブに初期化し、/dev/md0ファイルシステムを初期化します(ext3と仮定しますが、選択はあなたの役割です)。

mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/sdb1 missing
mkfs -text3 /dev/md0

これ/dev/sda1はルートファイルシステム()である可能性が高いので、/安全を維持するためにLive CD、リカバリディスク、またはその両方にアクセスできる他の起動可能なシステムで次の手順を実行する必要があります/dev/sda1/dev/md0シングルユーザーモードに切り替えるこの操作は正常に完了しました。

ファイルシステムの内容全体を/dev/sda1にコピーします/dev/md0

mount /dev/sda1 /mnt/a       # only do this if /dev/sda1 isn't mounted as root
mount /dev/md0 /mnt/b
cd /mnt/a                    # or "cd /" if it's the root filesystem
cp -dpRxv . /mnt/b

代わりに、次の起動時にインストールされるように編集するか、/etc/fstab別の方法で確認してください。システムはそのシステムで起動するように設定されている可能性があり、起動パラメータはそれをルートデバイスとして指定できるため、再起動時にこの設定をルートになるように手動で変更する必要があります。デバイス(ルートデバイスであると仮定)。再起動後に現在インストールされていること()、ダウングレードされたイメージで実行されていること()を確認してください。配列に追加:/dev/md0/dev/sda1/dev/sda1/dev/md0/dev/sda1/dev/md0dfcat /proc/mdstat/dev/sda1

mdadm /dev/md0 --add /dev/sda1

再ビルドすると上書きされるため、/dev/sda1どのメタデータバージョンを使用するかは問題ではありません。いつものように、主な変更を適用するときは、フルバックアップを実行するか(可能であれば)、少なくとも再作成できない項目が安全であることを確認してください。

/dev/md0ルートとして使用するには(ルートの場合)、起動設定を再作成する必要があり、常に起動するように再/dev/sda1作成する必要があります。mdadm.conf/dev/md0

おすすめ記事