该文章内容提及的第二步有一定几率会出现事故的风险。
LVM删除一些分区后数据仍然保留在磁盘内,只要没有被完全覆盖是可以恢复的。
大致上3个步骤完成:第一步查找出日志位置,第二步恢复分区,第三步激活分区。
以下内容的约定:
卷组名为vggroup,kvm*_img为卷。
恢复卷的对象是kvm22572_img
第一步查找日志
#vgcfgrestore -l /dev/vggroup
vgcfgrestore -l /dev/vggroup|grep -B2 -A1 lvremove
执行后可以看到类似以下的日志内容。
在日志内找到了kvm22572_img卷然后对应的File是/etc/lvm/archive/vggroup_01087-654942930.vg
--
File: /etc/lvm/archive/vggroup_01087-654942930.vg
VG name: vggroup
Description: Created *before* executing 'lvremove -v -f /dev/vggroup/kvm22572_img'
Backup Time: Thu Dec 15 10:35:29 2022
--
File: /etc/lvm/backup/vggroup
VG name: vggroup
Description: Created *after* executing 'lvremove -v -f /dev/vggroup/kvm22572_img'
Backup Time: Thu Dec 15 10:35:29 2022
第二步对卷进行恢复
vgcfgrestore /dev/vggroup -f /etc/lvm/archive/vggroup_01087-654942930.vg
*执行命令后会有回显信息 Restored volume group vggroup
第三步对卷做激活。
lvchange -a y /dev/vggroup/kvm22572_img