RAID 1アレイ(2ディスクミラー)があり、ディスクの1つであるsdaに障害が発生しました。そのため、不良ディスクを新しいディスクと交換しましたが、2番目のドライブを元に戻してアレイの一部として実行する方法に固執しているようです。
システムはUbuntuServer 9.04を実行しており、次のように構成されています。
MD0 => sda1、sdb1
MD1 => sda3、sdb3
MD2 => sda2、sdb2
mdadm --detail /dev/md0
2つのドライブを示しています。
0 /dev/sdb1 "Active Sync"
1 [nothing] "Removed"
MD1とMD2は同じように見えます。
私が見つけたチュートリアルでは、コマンドを使用して各パーティションを失敗としてマークするように指示されています。
mdadm --manage /dev/md0 --fail /dev/sda1
しかし、ドライブがないので、次のようになります。
mdadm: cannot find /dev/sda1: No such file or directory
失敗したステップをスキップできますか?または、存在しなくなったパーティションを失敗させる他の方法はありますか?または、古き良きドライブから新しいドライブにパーティションテーブルをコピーした場合、それが交換品であることが自動的に検出されますか?
私はこれが初めてで、それを台無しにしたくありません。 :)
あなたはそれらを失敗させる必要はないはずです。問題に最初に気付いたときにすでに失敗しているはずなので、RAIDメンバーは削除されました。それを元に戻して実行するには、ほんの数ステップがあります。
交換用ディスクにパーティションを設定します。これらのパーティションは、障害が発生して現在アクティブなディスクのサイズと同じである必要があり、パーティションタイプ「LinuxRAID自動検出」(0xFD)としてマークする必要があります。 sfdisk
を使用してパーティションテーブルをコピーすることで、これを簡略化できます。
sfdisk -d /dev/sdb | sfdisk /dev/sda
以前にディスクを使用したことがある場合は、再開する前に、既存のsoftRAID情報が削除されていることを確認することをお勧めします。
mdadm --zero-superblock /dev/sda
MBRを新しいディスクにインストールして、起動できるようにします。 grub
シェルからこれを行います。 /dev/sda
が最初のディスクであると想定します。
root (hd0,0)
setup (hd0)
quit
新しいパーティションをアレイに追加し直します。
mdadm --add /dev/md0 /dev/sda1
mdadm --add /dev/md1 /dev/sda3
mdadm --add /dev/md2 /dev/sda2
/proc/mdstat
を表示して、再構築のステータスを監視します。これはで自動化できます。
watch -n10 cat /proc/mdstat
チェック http://techblog.tgharold.com/2009/01/removing-failed-non-existent-drive-from.shtml 。使用する
mdadm/dev/mdX-rデタッチ