该文章内容提及的第二步有一定几率会出现事故的风险。
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