故障した RAID 5 アレイがあり、復旧できないようです。基本的には、このデータを RAID 5 に保存していて、RAID が組み込まれた LVM を使用していました。ディスクの 1 つが故障していることに気づいたので、新しいディスクを入手し、pvmove
故障したディスクから新しいディスクにエクステントを移動するように発行しました。移行中に、古いディスクが故障し、完全に応答しなくなりました (原因はわかりません)。そのため、再起動しましたが、アレイがまったく起動しません。すべては十分に正常に見えます。たとえば、3/4 のディスクが動作しており、故障したディスクも一時的に復旧しているはずです (ただし、信用できません)。しかし、発行すると、lvchange -a y vg-array/array-data
dmesg に次のエラーが表示されます。
not clean -- starting background reconstruction
device dm-12 operational as raid disk 1
device dm-14 operational as raid disk 2
device dm-16 operational as raid disk 3
cannot start dirty degraded array.
mdadmを使って強制的に起動する方法はあると思いますが、lvmについては見たことがありません。しかし、ディスクが3つあるので、すべてのデータはそこにはしたがって、回復可能であるはずです。その方法を誰か知っていますか?
答え1
これを解決するには、カーネルブートパラメータを追加することです。
md-mod.start_dirty_degraded=1
その後/etc/default/grub
、update-grub
再起動します。ボリュームを手動でアクティブ化する必要がありましたが、そのパラメータを追加した後、ダーティな劣化アレイはエラーではなく警告になりました。
答え2
新しいデバイスを追加した後、その上にPVを作成し、を使用してPVをボリュームグループに追加しvgextend
、を使用して不足しているPVを削除しますvgreduce --remove --force
。次のコマンドを使用して、LVM上のRAID6アレイを修復できます。
lvconvert --repair <vgname>/<lvname>
修復の進行状況lvs
は、Cpy%Sync で確認できます。