LVMグループからディスクを削除した後のファイルシステムの破損

LVMグループからディスクを削除した後のファイルシステムの破損

私はめちゃくちゃになり、回復するための最良の方法を見つけようとしています。

数日前、私のlvm設定の物理ディスクの1つにエラー(I / Oエラー)の兆候が表示され始め、pvmoveを使用して別のディスクに移動することにしました。それはうまくいきませんでした。 5日経ってもpvmove完了率は0.1%に過ぎず中止しました。

再起動後、死んだディスクはまったく表示されず、完全に死んだので、次のように削除することにしました。

vgreduce --removemissing --force VolGroup00

問題は、pvmoveがLVがロックされていると言うので、これを拒否することです。私は試した:

pvmove --abort

しかし、消えたディスクが死んだので、これを拒否しました。

だから私は立ち往生して次のことをしました。

vgcfgbackup VolGroup00

その後、ファイルを編集し、pvmoveのエントリを削除し、次のことを試しました。

vgcfgbackup VolGroup00

不足しているディスクが回復を拒否し、ファイルを再編集し、そこから欠落しているディスクを削除して正常に完了しましたvgcfgrestore

これで問題は、次の内容のためにボリュームをマウントできないことです。

wrong fs type, bad option, bad superblock

パーティションのサイズは2.4Tbでなければなりませんでしたが、現在は2.2Tbにすぎないため、これは意味があります。今問題は、この問題をどのように解決できるかということです。 testdiskなどのツールを使用する必要がありますか、どういうわけか新しい物理ボリューム/ボリュームグループを作成し、そこに2つの物理ディスクで構成された論理ボリュームを追加し、どういうわけか正しいファイルシステムを取得する必要がありますか(ファイルシステムはext4です) )?

pvdisplay出力:

--- Physical volume ---
PV Name               /dev/sda4
VG Name               VolGroup00
PV Size               417.15 GiB / not usable 4.49 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              106789
Free PE               0
Allocated PE          106789
PV UUID               dRhDoK-p2Dl-ryCc-VLhC-RbUM-TDUG-2AXeWQ

--- Physical volume ---
PV Name               /dev/sdb1
VG Name               VolGroup00
PV Size               1.82 TiB / not usable 4.97 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              476923
Free PE               0
Allocated PE          476923
PV UUID               MF46QJ-YNnm-yKVr-pa3W-WIk0-seSr-fofRav 

私はそれが死んだときの構成をまだ持っています。その様子は以下の通りです。 (私が削除した)死んだディスクはpv1(/dev/sdc1)でしたが、ディスクが欠落しているため、この設定を復元したくありません。

VolGroup00 {
    id = "a0p2ke-sYDF-Sptd-CM2A-fsRQ-jxPI-6sMc9Y"
    seqno = 4
    format = "lvm2"                 # informational
    status = ["RESIZEABLE", "READ", "WRITE"]
    flags = []
    extent_size = 8192              # 4 Megabytes
    max_lv = 0
    max_pv = 0
    metadata_copies = 0

    physical_volumes {

            pv0 {
                    id = "dRhDoK-p2Dl-ryCc-VLhC-RbUM-TDUG-2AXeWQ"
                    device = "/dev/sda4"    # Hint only

                    status = ["ALLOCATABLE"]
                    flags = []
                    dev_size = 874824678    # 417.149 Gigabytes
                    pe_start = 2048
                    pe_count = 106789       # 417.145 Gigabytes
            }

            pv1 {
                    id = "NOskcl-8nOA-PpZg-DCtW-KQgG-doKw-n3J9xd"
                    device = "/dev/sdc1"    # Hint only

                    status = ["ALLOCATABLE"]
                    flags = []
                    dev_size = 625142385    # 298.091 Gigabytes
                    pe_start = 2048
                    pe_count = 76311        # 298.09 Gigabytes
            }

            pv2 {
                    id = "MF46QJ-YNnm-yKVr-pa3W-WIk0-seSr-fofRav"
                    device = "/dev/sdb1"    # Hint only

                    status = ["ALLOCATABLE"]
                    flags = []
                    dev_size = 3906963393   # 1.81932 Terabytes
                    pe_start = 2048
                    pe_count = 476923       # 1.81932 Terabytes
            }
    }

    logical_volumes {

            lvolmedia {
                    id = "aidfLk-hjlx-Znrp-I0Pb-JtfS-9Fcy-OqQ3EW"
                    status = ["READ", "WRITE", "VISIBLE"]
                    flags = []
                    creation_host = "archiso"
                    creation_time = 1402302740      # 2014-06-09 10:32:20 +0200
                    segment_count = 3

                    segment1 {
                            start_extent = 0
                            extent_count = 476923   # 1.81932 Terabytes

                            type = "striped"
                            stripe_count = 1        # linear

                            stripes = [
                                    "pv2", 0
                            ]
                    }
                    segment2 {
                            start_extent = 476923
                            extent_count = 106789   # 417.145 Gigabytes

                            type = "striped"
                            stripe_count = 1        # linear

                            stripes = [
                                    "pv0", 0
                            ]
                    }
                    segment3 {
                            start_extent = 583712
                            extent_count = 76311    # 298.09 Gigabytes

                            type = "striped"
                            stripe_count = 1        # linear

                            stripes = [
                                    "pv1", 0
                            ]
                    }
            }
    }

ご協力ありがとうございます。

答え1

私は問題解決にさらに進展しました。

私はこれを経験しました:https://www.novell.com/coolsolutions/appnote/19386.html#DiskPermanentlyRemoved

だから新しいディスクを挿入し、次のことをしました。

pvcreate --uuid NOskcl-8nOA-PpZg-DCtW-KQgG-doKw-n3J9xd --restorefile VolGroup00_00001-16738001.vg /dev/sdc1

VolGroup00_00001-16738001.vgは、ディスクが破損する前のlvm構成なので削除しました。

それから私は次のことをしました。

vgcfgrestore VolGroup00
vgscan
vgchange -ay VolGroup00

vgcfgrestore の VolGroup00 は以前の VolGroup00_00001-16738001.vg です。上記の新しいリンクと同様に、これはすべて成功しています。

これでボリュームをマウントしてデータをインポートできますが、fsckの問題が発生します。

The filesystem size (according to the  superblock) is 675863552 blocks
The physical size of the device is  597721088 blocks
Either the superblock or the partition table is likely  to be corrupt!
Abort<y>?

関連情報