紛失して見つかった PV を LVM VG に再統合するにはどうすればよいでしょうか?

紛失して見つかった PV を LVM VG に再統合するにはどうすればよいでしょうか?

最近、Linux LVM ボリューム グループの 1 つである物理ボリュームである RAID を失いました。結局vgreduce --removemissing、データの復元作業に取り掛かりました。

さて、今日私はその RAID を見つけました (隠れていたので聞かないでください)。

# pvdisplay -m /dev/md2
  WARNING: Volume group mg20 is not consistent
  "/dev/md2" is a new physical volume of "499.87 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/md2
  VG Name               
  PV Size               499.87 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               SUXIe9-B4xG-Qlbz-5cSd-f1dh-cRQh-vOF4qz

mg20一貫性がありません。lost&found PV には/dev/md2、 に存在するファイルシステムを示す古い論理ボリュームカタログのコピーが含まれている可能性があります/dev/md2

/dev/md2に再統合してmg20、そこにあるファイルシステムを保存するにはどうすればよいですか? (そして、その内容を復元する手間を省くには) 簡素化の要因は/dev/md2、 には 1 つの LV しか含まれておらず、その LV は に完全に含まれていたことです/dev/md2

答え1

私は理解した1つのレイドを回復する方法。最近の LVM システムは、VG 構成のバックアップをかなり頻繁に作成します。 を使用して、バックアップのリストとそれらをトリガーしたコマンドを表示できますvgcfgrestore --list。 を実行したときに以前から 1 つを選択しvgreduce --removemissing、その中に次の関連部分を見つけました。

pv8 {
        id = "SUXIe9-B4xG-Qlbz-5cSd-f1dh-cRQh-vOF4qz"
        device = "unknown device"       # Hint only

        status = ["ALLOCATABLE"]
        flags = ["MISSING"]
        dev_size = 1048312832   # 499.875 Gigabytes
        pe_start = 2048
        pe_count = 127967       # 499.871 Gigabytes
}

そして

homes18 {
        id = "d7yt43-PMTv-XnsH-qAff-3d5A-ilB6-eQB0Jy"
        status = ["READ", "WRITE", "VISIBLE"]
        flags = []
        segment_count = 1

        segment1 {
                start_extent = 0
                extent_count = 89600    # 350 Gigabytes

                type = "striped"
                stripe_count = 1        # linear

                stripes = [
                        "pv8", 0
                ]
        }
}

そこで、そのファイルのコピーを作成し、"MISSING"から削除しましたflags =。 も設定しましたdevice = "/dev/md2"が、これはおそらく必要ありませんでした。 を実行したvgcfgrestore -f /etc/lvm/archive/mg20_synthetic-2015.vg mg20ところ、mg20/homes18 が復活し、fsck に合格しました。

正直に言うと、この回答にはあまり満足していません。構成全体を復元するのは少しやりすぎです。

本当の答えは を含むかもしれないと思うlvcreate -Z nが、これを検証するために必要な実験を実行するのは面倒だ。

関連情報