
3 つの pv を持つ VG がありました。VG には 3 つの PV すべてを使用する 1 つの LV がありました。その後、1 つの PV (hdd) が故障しました。私は、できる限りの回復を試みたかったのです。そこで、まず最初に、失われた PV を LV/VG から削除する必要がありました。Google で見つけた手順に従って、vgreduce を使用してその PV を削除しました。しかし、学んだように、LV も削除されました。現在、vgchange を使用するために、vgreduce の前の元の構成を復元しようとしています。vgcfgrestore -f を使用しています。ここで、アーカイブ ファイルは vgreduce の前に作成されたものです。しかし、「1 つの PV が欠落としてマークされているため、ボリューム グループ VGR を復元できません」というメッセージが表示され続けます。
LV は回復可能でしょうか? 可能であれば、どのように回復しますか?
どのような助けでも大歓迎です。
ティア
ケン
答え1
Linux LVMは、デフォルトではLVのあるPVを削除しません。LVの整合性を保つには、すべてのエクステントが必要です。LVを vgreduce --force
削除すると、いくつかの安全性チェックが無効になります。とても使用するオプションを具体的に慎重に選択してください。ターミナル セッションをログに記録します。
回復計画を立てます。このデータのバックアップがあるかどうかを確認します。組織にとってそのデータがどれほど価値があるか、また再作成にどのくらいの時間がかかるかを見積もります。バックアップがない場合は、プロのデータ回復サービスから見積もりを取得することを検討します。
故障したドライブを、同じサイズの正常なドライブにイメージ化します。自分で行う場合は、 などのエラー耐性のあるツールを使用しますdd_rescue
。場合によっては、メディアがすでに壊れていなくても、さらに使用するとメディアがさらに損傷する可能性があることに注意してください。データ復旧サービスでは、データを復元するために手術を行うことができる場合があります。
イメージを作成できれば、新しいディスクには古い PV の ID が設定されます。新しいデバイスを再度追加します。LV vgextend --restoremissing $PV
を減らしたので、この段階でvgcfgrestore --file
再度試して、それを実行する前の状態に戻します。
すべての試みが失敗し、データ損失を受け入れる場合は、故障した PV を新しい空のドライブに交換することを検討してください。これにより、ほぼ確実にデータが破損します。破損がどのように現れるかは、ファイル システムなどによって異なります。しかし、試してみる価値はあります。man vgcfgrestore
手順を説明します。
PV を置き換えるには、
vgdisplay --partial --verbose
存在しなくなった PV の UUID とサイズを表示します。VG 内の PV が失われ、同じサイズの別の PV で置き換える場合は、pvcreate --restorefile filename --uuid uuid
(および必要に応じて追加の引数) を使用して、失われた PV と同じ UUID で初期化します。VG 内の他のすべての失われた PV に対して繰り返します。次に、を使用してvgcfgrestore --file filename
VG のメタデータを復元します。
PV が失われない、それほど劣化していないシナリオでは、pvmove
PV 間でエクステントを移動し、ストレージの移行に使用できます。
今後、ハード ドライブの損失時にボリューム グループが存続できるようにするには、冗長性の追加を検討してください。アレイの LUN からの PV を含む LVM の下、または LVM レイヤーのいずれかです。ソフトウェア ソリューションについては、それぞれマニュアル ページmdadm
とを参照してください。lvmraid
答え2
このリンクがあなたの質問に対する答えだと思います https://unix.stackexchange.com/questions/47380/lvm はデータをどこに保存しますか?