[linux-lvm] lvm lost after reboot !? how to recover UUID?

GARIN N Ext ROSI/SIPROD ngarin.ext at francetelecom.com
Tue Jul 19 08:28:25 UTC 2005


kitchhiking.org a écrit :

> Hi,
>
> I'm using LVM only for about a month now and it ran flawless until  
> today.
>
> After rebooting the system all my PVs/VGs/LVs were gone, "mount" saying
> e.g.:
>
> > mount: /dev/WD2000JB-182GB/srv is not a valid block device
>
> /etc/lvmtab now is an empty file, /etc/lvmtab.d, /etc/lvm/backup and
> /etc/lvm/archive are empty as well.
>
> This is strange because etc/lvm/lvm.conf says that backups and archives
> should be created but i can't find anything.
>
> What remains are some files in /etc/lvmconf named  
> "WD2000JB-182GB.conf" and
> "IBM80G2.conf" and some older versions of those.
>
> I read on the web *) about recovering the data using pvcreate/ 
> vgcfgrestore,
> but since "/etc/lvm/backup" and "/etc/lvm/archive" are empty I don't  
> know
> how to retrieve the UUIDs of my PVs.
> *) http://codeworks.gnomedia.com/archives/2005/general/lvm_recovery/
>
> Of course I don't have any further backup of these, since I first  
> read about their
> importance doing that when digging for hints howto recover my data.
>
> (stupid me (tm))
>
> The System is running Debian Sarge stable (2.4.27-2) on a
> P3/Intel BX with 3 harddrives attached to it. LVM is Version 1.08
>
> from /etc/fstab:
>
> #lvm
> /dev/WD2000JB-182GB/mld  /home/mld       auto   
> suid,dev,exec              0 0
> /dev/WD2000JB-182GB/srv  /srv/foo        auto   
> suid,noexec,nodev          0 0
> /dev/IBM80G2/costa_home  /home/costa     auto   
> suid,noexec,nodev          0 0
>
> where:
>
> /dev/WD2000JB-182GB/ is situated on /dev/hda (a 200GB Harddisk)
> /dev/IBM80G2/costa_home sits on /dev/hde (an 80GB Harddisk attached  
> to an onboard
>                                           HPT366 ATA66 Controller)
>
> pvdisplay /dev/WD2000JB-182GB says:
>
> > cserver:/etc/lvm# pvdisplay /dev/hde
> > pvdisplay -- ERROR "pv_read(): pv_create_name_from_kdev_t" no  VALID 
> physical volume "/dev/hde"
>
> vgdisplay just returns:
>
> > cserver:/etc/lvm# vgdisplay
> > vgdisplay -- no volume groups found
>
> If any of you has a clou how i could recover my data (or just the  
> UUIDs) or
> maybe rebuild the LVM I'd be really grateful.
>
> Hope to hear from you,
> Constantin
>
> _______________________________________________
> linux-lvm mailing list
> linux-lvm at redhat.com
> https://www.redhat.com/mailman/listinfo/linux-lvm
> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>
Hi,

To retrieve the UUIDs of your PVs :

[root at pn root]# pvscan -u
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- ACTIVE   PV "/dev/sdas" with UUID 
"02MxKG-wGQT-FpaX-kj1j-aIGi-NXPM-7t38Bt" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdat" with UUID 
"BRRj5q-taYQ-hz5c-Hull-1vlX-PeGQ-lngHG0" of VG "datavg" [33.66 GB / 864 
MB free]
pvscan -- ACTIVE   PV "/dev/sda2" with UUID 
"EIfzic-F5XB-yqYr-5wY7-lGSQ-gglM-6KsmF3" of VG "rootvg" [33.60 GB / 9.89 
GB free]
pvscan -- ACTIVE   PV "/dev/sdb " with UUID 
"mhVisK-IgAk-F6m3-RDjG-TJ1T-cH6S-tmeDPs" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdc " with UUID 
"Xe03YQ-6gTw-M7DA-0ODR-sfXT-Ti1v-527o1W" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdd " with UUID 
"tL0Ew7-OcSB-2mbD-r0yH-MRvY-7DSM-MDzzRv" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sde " with UUID 
"QNEj7S-r445-xZd3-WVyP-EFU9-WEQS-FnIx38" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdf " with UUID 
"OUL3A2-h1EM-v8w8-Y2UN-vii8-79Qo-7hloOj" of VG "datavg" [33.66 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdg " with UUID 
"4ryusb-84Et-22md-QwaQ-Jk3w-iXVB-r5p4gj" of VG "datavg" [33.66 GB / 0 free]

or
[root at pn root]# pvscan -u | sed -e 's/["|-]//g'
pvscan  ACTIVE   PV /dev/sdas with UUID 02MxKGwGQTFpaXkj1jaIGiNXPM7t38Bt 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sdat with UUID BRRj5qtaYQhz5cHull1vlXPeGQlngHG0 
of VG datavg [33.66 GB / 864 MB free]
pvscan  ACTIVE   PV /dev/sda2 with UUID EIfzicF5XByqYr5wY7lGSQgglM6KsmF3 
of VG rootvg [33.60 GB / 9.89 GB free]
pvscan  ACTIVE   PV /dev/sdb  with UUID mhVisKIgAkF6m3RDjGTJ1TcH6StmeDPs 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sdc  with UUID Xe03YQ6gTwM7DA0ODRsfXTTi1v527o1W 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sdd  with UUID tL0Ew7OcSB2mbDr0yHMRvY7DSMMDzzRv 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sde  with UUID QNEj7Sr445xZd3WVyPEFU9WEQSFnIx38 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sdf  with UUID OUL3A2h1EMv8w8Y2UNvii879Qo7hloOj 
of VG datavg [33.66 GB / 0 free]
pvscan  ACTIVE   PV /dev/sdg  with UUID 4ryusb84Et22mdQwaQJk3wiXVBr5p4gj 
of VG datavg [33.66 GB / 0 free]

And compare UUID with the backup files. Backup files are in binary 
format but you can find some informations with the command strings :

[root at pn root]# strings  /etc/lvmconf/datavg.conf
datavg
3W      pFW     PYW     0lW
gnVb174BNhliAYzpfTck3Tia2F6WA5w4
/dev/sdb
datavg
pndracap1119470784
mhVisKIgAkF6m3RDjGTJ1TcH6StmeDPs
/dev/sdc
datavg
pndracap1119471248
Xe03YQ6gTwM7DA0ODRsfXTTi1v527o1W
/dev/sdd
datavg
pndracap1119471272
tL0Ew7OcSB2mbDr0yHMRvY7DSMMDzzRv
/dev/sde
datavg
pndracap1119471281
QNEj7Sr445xZd3WVyPEFU9WEQSFnIx38
/dev/sdf
datavg
pndracap1119471287
xHW
OUL3A2h1EMv8w8Y2UNvii879Qo7hloOj
/dev/sdg
datavg
pndracap1119471296
X[W
4ryusb84Et22mdQwaQJk3wiXVBr5p4gj
/dev/sdas
datavg
pndracap1120640174
8nW
02MxKGwGQTFpaXkj1jaIGiNXPM7t38Bt
/dev/sdat
datavg
pndracap1120640188
BRRj5qtaYQhz5cHull1vlXPeGQlngHG0
/dev/datavg/lv_data
datavg


You can change UUIDs in the backup file like this example :
[root at pn root]# cat /etc/lvmconf/datavg.conf | \
sed -e 
"s/mhVisKIgAkF6m3RDjGTJ1TcH6StmeDPs/YJVxbrHC4WXnpqFKBHB0Cio2Ig2P1kaL/g" | \
sed -e 
"s/Xe03YQ6gTwM7DA0ODRsfXTTi1v527o1W/t6xBPE3iiuspQbCRdV7wKoQDizuhDOUH/g" | \
sed -e 
"s/tL0Ew7OcSB2mbDr0yHMRvY7DSMMDzzRv/WmD7qbnNUihw42CuS7a6aGRfHFHlDLEr/g" | \
sed -e 
"s/QNEj7Sr445xZd3WVyPEFU9WEQSFnIx38/pfHJyx4MsvR2T365GYBDRySBcks5HUyP/g" | \
sed -e 
"s/OUL3A2h1EMv8w8Y2UNvii879Qo7hloOj/Bi7y8xCxoYcTsU0cvGwd8EOpLDT5ywZL/g" | \
sed -e 
"s/4ryusb84Et22mdQwaQJk3wiXVBr5p4gj/jGgc15WsZ6Q34r1cQdxE3bLIg60qdFmR/g"   \
 > /tmp/datavgbcv.conf


And restore all disk :
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sdaw /dev/sdbc
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sdax /dev/sdbd
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sday /dev/sdbe
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sdaz /dev/sdbf
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sdaa /dev/sdbg
[root at pn root]# vgcfgrestore -f /tmp/datavgbcv.conf -n datavgbcv -o 
/dev/sdab /dev/sdbh


 
regards

Nicolas GARIN.




More information about the linux-lvm mailing list