[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [linux-lvm] Partition table gone? Any way to restore?



Small update. Using a hex editor i was able to more closley examine my disk(s). Since I have 2 LVM setups I was somewhat able to compare what I have to what I should have. I do still need some insite however.

From what I can tell, pvcreate only modifies the first few k's of the disk, followed by information stored from the vgcreate.
Then the lvcreate adds some more information after this. (vg00/lv basicly).


I hope i got it right so far : )

Now, the vgcreate information is identical on the two surviving parts except for a 'hostname<someserialnumber>' part around address 0x00012c.

Then at 0x0001000 we see the UUID of the VG passing by followed by some data (which is identical on all three vgs.

I don't think i have to look beyond this point in space/address.

Assuming that none of the tools (besides pvcreate) write anything before 0x0001000, I should be able to pvcreate /dev/hde edit the UUID of that specific PV (to the same stored in the other two PV's so the three match up again) and have a fully workable LVM set again.

The only thing that might worry me is crc information stored somewhere after 0x0001000 (However it appears to me that there isn't a whole bunch of data stored before 0x0001000 and the data created by pvcreate is identical on all 3 drives with the exception of the UUID so the crc value should match again) and the string 'vg00'at 0x0000ac i see on all disks (the name of the vg.

What my question is (without spending days reading the sourcecode : ) is am I correct? Assuming that all the 'important' metadata and such is stored 'after' 0x0001000 hex, is there a good chance of it working?

I'm thinking of running a pvcreate, change the UUID of the PV to what I expect it to be, add 'vg00' at 0x000ac and be happy?

I could simply try, I know, but some feedback first would be appreciated ; ) I really don't want to loose my data.

Thanks a lot.

Oliver


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]