激活之后我的/home就出来了,下面的文件我看了一下都是对的;当然这个只是我的情况,有类似问题的同学可以参照一下,根据自己的情况进行调整;也要感谢网络上很多的大牛,
一直对Linux下面lvm感兴趣,对于添加PV、 加入VG卷组、 新建LV都玩了。顺着来看看教程都还挺简单的,但是一直很想玩玩在出错的情况下,如何进行恢复;
一个偶然的情况下,虚拟机开机直接进入维护模式;检查发现有个pv无法找到,显示unknown的状态;如图
上面可以看到我有2个PV 其中一个显示unknown device,还会有警告信息如下
WARNING: Device for PV ********** not found or rejected by a filter
发现问题之后就需要去找解决办法了,在网上逛了一圈,确实有不少大牛都有给出解决办法;看完之后总结了一下,
Linux的LVM会默认存储用户对PV/VG/LV的每一步操作,并自动把当前的VG的信息备份到一个文件里面,位置是/etc/lvm/backup/VG名。
这个文件里面记录的东西大概跟vgdisplay/pvdisplay/lvdisplay输出的信息一致,里面也包括了对于恢复VG信息至关重要的PVUUID。
这个文件记录的信息大概就相当于整个VG的元数据,这个文件非常重要,我们就是通过这个文件来恢复整个VG的信息的,下面是这个文件的不完整截图。
上面我截图这个是我机器上VG卷组centos里面包含的2个PV信息,pv的id device;找到这些信息下面就是通过这些信息来进行恢复;
[root@localhost]# pvcreate /dev/sda5 -u X4xYDe-VSiw-Gzh3-Ih78-dC08-xBKF-tGWc5s --restorefile
/etc/lvm/backup/centos
// 使用原来的PV UUID来创建PV,并使用自动备份的文件来恢复信息
[root@localhost]# vgcfgrestore datavg // 恢复datavg的vg信息
[root@localhost]# vgs && pvs && lvs
完事之后激活一下VG卷
root@localhost]vgchange -ay centos
激活之后我的/home就出来了,下面的文件我看了一下都是对的;当然这个只是我的情况,有类似问题的同学可以参照一下,根据自己的情况进行调整;也要感谢网络上很多的大牛,
转载本篇文章请注明文章原出处:http://www.orcs.cc/post/38.html