17.9. 从磁盘中提取 VG 元数据
根据您的情况,选择以下一个流程从磁盘中提取 VG 元数据。有关如何保存提取的元数据的详情,请参考 将提取的元数据保存到文件中。
注意
要进行修复,您可以使用 /etc/lvm/backup/
中的备份文件,而无需从磁盘提取元数据。
流程
打印从有效的
mda_header
引用的当前元数据文本:# pvck --dump metadata <disk>
例 17.8. 有效的
mda_header
中的元数据文本# pvck --dump metadata /dev/sdb metadata text at 172032 crc Oxc627522f # vgname test segno 59 --- <raw metadata from disk> ---
根据查找有效的
mda_header
,打印元数据区域中找到的所有元数据副本的位置:# pvck --dump metadata_all <disk>
例 17.9. 元数据区域中元数据副本的位置
# pvck --dump metadata_all /dev/sdb metadata at 4608 length 815 crc 29fcd7ab vg test seqno 1 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv metadata at 5632 length 1144 crc 50ea61c3 vg test seqno 2 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv metadata at 7168 length 1450 crc 5652ea55 vg test seqno 3 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv
搜索元数据区域中没有使用
mda_header
的所有元数据的副本,例如,如果标头丢失或损坏了:# pvck --dump metadata_search <disk>
例 17.10. 元数据区域中没有使用
mda_header
的元数据的副本# pvck --dump metadata_search /dev/sdb Searching for metadata at offset 4096 size 1044480 metadata at 4608 length 815 crc 29fcd7ab vg test seqno 1 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv metadata at 5632 length 1144 crc 50ea61c3 vg test seqno 2 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv metadata at 7168 length 1450 crc 5652ea55 vg test seqno 3 id FaCsSz-1ZZn-mTO4-Xl4i-zb6G-BYat-u53Fxv
在
dump
命令中包含-v
选项,以显示每个元数据副本的描述:# pvck --dump metadata -v <disk>
例 17.11. 显示每个元数据副本的描述
# pvck --dump metadata -v /dev/sdb metadata text at 199680 crc 0x628cf243 # vgname my_vg seqno 40 --- my_vg { id = "dmEbPi-gsgx-VbvS-Uaia-HczM-iu32-Rb7iOf" seqno = 40 format = "lvm2" status = ["RESIZEABLE", "READ", "WRITE"] flags = [] extent_size = 8192 max_lv = 0 max_pv = 0 metadata_copies = 0 physical_volumes { pv0 { id = "8gn0is-Hj8p-njgs-NM19-wuL9-mcB3-kUDiOQ" device = "/dev/sda" device_id_type = "sys_wwid" device_id = "naa.6001405e635dbaab125476d88030a196" status = ["ALLOCATABLE"] flags = [] dev_size = 125829120 pe_start = 8192 pe_count = 15359 } pv1 { id = "E9qChJ-5ElL-HVEp-rc7d-U5Fg-fHxL-2QLyID" device = "/dev/sdb" device_id_type = "sys_wwid" device_id = "naa.6001405f3f9396fddcd4012a50029a90" status = ["ALLOCATABLE"] flags = [] dev_size = 125829120 pe_start = 8192 pe_count = 15359 }
此文件可用于修复。第一个元数据区域默认用于转储元数据。如果磁盘在磁盘的末尾有第二个元数据区域,您可以使用 --settings "mda_num=2"
选项将第二个元数据区域用于转储元数据。