13.5. 在 LVM 物理卷中恢复元数据
这个过程恢复被损坏或者替换为新设备的物理卷的元数据。您可以通过重写物理卷的元数据区域从物理卷中恢复数据。
警告
不要在正常的 LVM 逻辑卷中尝试这个步骤。如果您指定了不正确的 UUID,将会丢失您的数据。
先决条件
- 您已找出丢失的物理卷的元数据。详情请查看查找缺少的 LVM 物理卷的元数据。
流程
恢复物理卷中的元数据:
# pvcreate --uuid physical-volume-uuid \ --restorefile /etc/lvm/archive/volume-group-name_backup-number.vg \ block-device
注意该命令只覆盖 LVM 元数据区域,不会影响现有的数据区域。
例 13.4. 在 /dev/vdb1上恢复物理卷
以下示例使用以下属性将
/dev/vdb1
设备标记为物理卷:-
FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk
的 UUID VG_00050.vg
中包含的元数据信息,它是卷组最新的好归档元数据。# pvcreate --uuid "FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk" \ --restorefile /etc/lvm/archive/VG_00050.vg \ /dev/vdb1 ... Physical volume "/dev/vdb1" successfully created
-
恢复卷组的元数据:
# vgcfgrestore myvg Restored volume group myvg
显示卷组中的逻辑卷:
# lvs --all --options +devices myvg
逻辑卷目前不活跃。例如:
LV VG Attr LSize Origin Snap% Move Log Copy% Devices mylv myvg -wi--- 300.00G /dev/vdb1 (0),/dev/vdb1(0) mylv myvg -wi--- 300.00G /dev/vdb1 (34728),/dev/vdb1(0)
如果逻辑卷的片段类型是 RAID,则重新同步逻辑卷:
# lvchange --resync myvg/mylv
激活逻辑卷:
# lvchange --activate y myvg/mylv
-
如果磁盘中的 LVM 元数据至少使用了覆盖其数据的空间,这个过程可以恢复物理卷。如果覆盖元数据的数据超过了元数据区域,则该卷中的数据可能会受到影响。您可能能够使用
fsck
命令恢复这些数据。
验证
显示活跃逻辑卷:
# lvs --all --options +devices LV VG Attr LSize Origin Snap% Move Log Copy% Devices mylv myvg -wi--- 300.00G /dev/vdb1 (0),/dev/vdb1(0) mylv myvg -wi--- 300.00G /dev/vdb1 (34728),/dev/vdb1(0)