How to recover data corrupted by vgcreate
Hi,
There is no backup information available in /etc/lvm/archive to restore VG to original configuration. Unfortunately the root directory is also in LVM partition.
So, "vgcfgrestore" did not solve the problem.
I also tried to create new LV by "lvcreate" to match with the existing LV.
The problem is I have no idea about the size of old LV.
I just gave a random size in "lvcreate" command.
But, I could not mount the file system because of bad superblock.
I don't know what I missed. Maybe the size is critical to do the matching.
Is there any reverse procedure I can do to recover VG by the existing LV information? It may just like to recover partition table by scanning cylinder data in hard disk. Any idea? Thanks a lot.
Davis
Quoted 11 lines
Quoted 10 lines · Jonathan E Brassow
Quoted 6 lines
I'm not familiar exactly with how the metadata gets laid on disk, but I would think you could just 'vgcreate
vg_name/dev/hdd2' (you did this
already) then 'lvcreate -n <lvname> -l <max size>vg_name'... This of course assumes that the previous lv resided wholly on/dev/hdd2. Then try mounting the new lv and see what happens.Before you do that, try vgcfgrestore.
Quoted 6 lines
AJ, when he did the initial 'vgcreate' was part of the process to create a backup copy of the metadata? If so, vgcfgrestore could work. But otherwise, I'm not sure were the old metadata would be stored, since this disk is from a different machine... Seems odd to me that vgcreate would blow over the old vg if it knew about it. If it did not know (or detect the old vg), how would it know to backup the metadata?
Not sure, but if the reason the disk was moved was because a cpu went out, i'm assuming the old root fs is also on that disk - hoping so anyway ;) If so, the old root fs can be mounted and /etc/lvm/archive can be checked for a valid copy of the metadata. (Assuming root wasn't on lvm...)
As to why vgcreate didn't recognize the old VG...that's very odd - not sure what went wrong there...