当前位置: 首页 > Linux

在LVM中恢复已删除的逻辑卷

时间:2023-04-06 03:27:01 Linux

本文介绍如何恢复已删除的逻辑卷。如果要执行恢复,您将使用vgcfgrestore命令。在执行任何逻辑卷管理相关任务时,如果不小心删除了逻辑卷,您可以使用其数据恢复功能来恢复逻辑卷。在下面的步骤中,我们将演示如何删除卷组中的任意逻辑卷,以及如何恢复被删除的逻辑卷。系统环境Centos8现有的文件系统在开始本文之前已经创建了一个逻辑卷,并在其中存放了一些文件。[root@localhost~]#pvsPVVGFmtAttrPSizePFree/dev/nvme0n1p2cllvm2a--<19.00g<2.00g/dev/sdavg_datalvm2a--<20.00g0/dev/sdbvg_datalvm2a--<20.00g0[root@localhost~]#vgsVG#PV#LV#SNAttrVSizeVFreecl120wz--n-<19.00g<2.00gvg_data210wz--n-39.99g0[root@localhost~]#lvsLVVGAttrLSizePoolOriginData%Meta%MoveLogCpy%SyncConvertrootcl-wi-ao----15.00gswapcl-wi-ao----2.00glv_datavg_data-wi-ao----39.99g[root@localhost~]#df-h/dataFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/vg_data-lv_data40G318M40G1%/datarestoredinLVMdeleted恢复LVM中一个删除的逻辑卷/data目录下的文件如下:volumelv_data[root@localhost~]#umount/data[root@localhost~]#lvremove-v/dev/vg_data/lv_data你真的要删除活动逻辑卷vg_data/lv_data吗?[y/n]:yAcceptedinput:[y]Removingvg_data-lv_data(253:2)Archivingvolumegroup"vg_data"metadata(seqno2).Releasinglogicalvolume"lv_data"Creatingvolumegroupbackup"/etc/lvm/backup/vg_data"(seqno3).Logicalvolume"lv_data"successfullyremovedRecoveringadeletedlogicalvolumeinLVMRecoveryadeletedlogicalvolumeinLVM使用lvs命令打印并确认我们已经删除了逻辑卷lv_data:Restorethedeletedlogicalvolume由于删除了lv_data卷,可以看到卷组vg_data剩余空间为40G。[root@localhost~]#vgsVG#PV#LV#SNAttrVSizeVFreecl120wz--n-<19.00g<2.00gvg_data200wz--n-39.99g39.99g开始恢复逻辑volume现在,让我们看看如何恢复已删除的逻辑卷。每当我们执行任何与LVM()相关的任务时,所有内容都会记录在/etc/lvm/archive下。并使用vgcfgbackup命令备份卷组配置并将其存储在/etc/lvm/backup下。[root@localhost~]#ll/etc/lvm/backup/total8-rw--------.1rootroot1746Mar916:27cl-rw------。1rootroot1147Apr810:20vg_data[root@localhost~]#ll/etc/lvm/archive/total24-rw------。1rootroot17402019年12月29日cl_00000-1531402016.vg-rw-------。1根根1740年3月9日16:27cl_00001-790744555.vg-rw----。1rootroot1747Mar916:27cl_00002-1369752011.vg-rw-------。1rootroot1150Apr809:52vg_data_00000-919482485.vg-rw------。1rootroot1155Apr809:54vg_data_00001-1289102393.vg-rw-------。1rootroot1763Apr810:20vg_data_00002-1932879749.vgRecoveringaDeletedLogicalVolumeinLVMRecoveryaDeletedLogicalVolumeinLVM在上面的步骤中删除逻辑卷,使用lvremove-v/dev/当使用vg_data/lv_data命令,可以看到输出的详细信息,包括归档和创建备份。在下面的LVM列表中恢复已删除的逻辑卷并检查有多少卷组元数据备份可用:[root@localhost~]#vgcfgrestore--listvg_dataFile:/etc/lvm/archive/vg_data_00000-919482485.vgCouldn'tfinddevicewithuuidl5rSrt-SRfc-KQNw-Tm29-gx4D-ihBw-Xzum3L。无法找到具有uuidv6wYGZ-0dGA-8ecB-kec8-r2zv-gD.Ji-gulSA的设备VG名称:vg_data描述:在执行“vgcreatevg_data/dev/sda/dev/sdb”之前创建备份时间:ThuApr809:52:492021File:/etc/lvm/archive/vg_data_00001-1289102393.vgVG名称:vg_data描述:在执行'lvcreate-l100%FREE-nlv_datavg_data'之前创建备份时间:ThuApr809:54:452021文件:/etc/lvm/archive/vg_data_00002-1932879749.vgVG名称:vg_data描述:在执行'lvremove-v/dev/vg_data/lv_data'之前创建备份时间:ThuApr810:20:532021File:/etc/lvm/backup/vg_dataVG名称:vg_data描述:执行'lvrem后创建ove-v/dev/vg_data/lv_data'BackupTime:ThuApr810:20:532021--list选项列出了与VG相关的元数据备份和存档文件我们要恢复的是删除卷组之前的存档,所以选择下图圈出的/etc/lvm/archive/vg_data_00002-1932879749.vg文件。恢复LVM中删除的逻辑卷在恢复之前,使用--test选项测试运行:[root@localhost~]#vgcfgrestorevg_data-f/etc/lvm/archive/vg_data_00002-1932879749.vg--testTESTMODE:Metadatawill不会更新,卷也不会被(取消)激活。已恢复卷组vg_data。RestoredeletedlogicalvolumesinLVMRestoredeletedlogicalvolumesinLVMtest运行没有问题后,去掉--test选项,再执行:[root@localhost~]#vgcfgrestorevg_data-f/etc/lvm/archive/vg_data_00002-1932879749.vg恢复卷组vg_data。恢复LVM中删除的内容恢复LVM中删除的逻辑卷,可以看到卷组vg_data恢复成功。-f选项读取由vgcfgbackup创建的元数据文件。使用lvs查看lv_data逻辑卷是否已经恢复,使用lvscan查看逻辑卷是否激活:[root@localhost~]#lvsLVVGAttrLSizePoolOriginData%Meta%MoveLogCpy%SyncConvertrootcl-wi-ao----15.00gswapcl-wi-ao----2.00glv_datavg_data-wi-------39.99g[root@localhost~]#lvscanACTIVE'/dev/cl/swap'[2.00GiB]inheritACTIVE'/dev/cl/root'[15.00GiB]inheritinactive'/dev/vg_data/lv_data'[39.99GiB]inheritrestoredeletedlogicalvolumeinLVMrestoredeletedlogicalvolumeinLVMcanbe看到lv_data已经恢复了,但是状态是inactive。下一步是激活逻辑卷。激活逻辑卷使用lvchange命令激活逻辑卷:[root@localhost~]#lvchange-ay/dev/vg_data/lv_data[root@localhost~]#lvscanACTIVE'/dev/cl/swap'[2.00GiB]inheritACTIVE'/dev/cl/root'[15.00GiB]inheritACTIVE'/dev/vg_data/lv_data'[39.99GiB]inherit[root@localhost~]#lvsLVVGAttrLSizePoolOriginData%Meta%MoveLogcpy%SyncConvertrootcl-wi-ao----15.00gswapcl-wi-ao----2.00glv_datavg_data-wi-a-----39.99g恢复LVM中删除的逻辑卷恢复删除的逻辑卷在上图中可以看到“/dev/vg_data/lv_data”逻辑卷已经被激活。挂载并验证挂载的文件系统:[root@localhost~]#mount/dev/vg_data/lv_data/data/[root@localhost~]#df-h/dataFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/vg_data-lv_data40G318M40G1%/dataRestoreingdeletedlogicalvolumesinLVMRecoveringdeletedlogicalvolumesinLVMshowsthefilesalreadyexist.总结本文成功地从卷组元数据中恢复了删除的逻辑卷。