Outils personnels

Restauration d'un VG si un disque perd son uuid

De wikiGite

Révision datée du 17 juin 2013 à 08:27 par Frank (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Booter en mode rescue (mode par défaut proposé par linux si une partition ne monte pas).


Remonter la racine en RW

# mount -o remount /

Voir le volume en cause :

# pvscan
 Couldn't find device with uuid yF12vQ-Pcsb-MDXA-D85j-02ci-ivJd-yR92mi
 PV /dev/sda2   VG VGRoot   lvm2 [24,59 GB / 0    free]
 Total: 1 [24,59 GB] / in use: 1 [24,59 GB] / in no VG: 0 [0   ]
 PV /dev/sdb1   VG VGData   lvm2 [249,88 GB / 0    free]
 Total: 1 [249,88 GB] / in use: 1 [249,88 GB] / in no VG: 0 [0   ]

Ici, bien qu'affiché tout de suite, le message concerne le second volume /dev/sdb1.

Lister les sauvegardes (automatiques) de la configuration LVM :

# vgcfgrestore --list VGData

 File:        /etc/lvm/archive/VGData_00000.vg
 VG name:     VGData
 Description: Created *before* executing '/sbin/vgs --noheadings -o name'
 Backup Time: Wed Oct  5 17:13:17 2011

 File:        /etc/lvm/backup/VGData
 VG name:     VGData
 Description: Created *after* executing '/sbin/vgs --noheadings -o name'
 Backup Time: Wed Oct  5 17:13:17 2011

On recrée le volume physique en forçant l'UUID. A priori, cette opération ne touche pas aux données de la partition, mais on ne peut jamais être sûr... C'est donc sans garantie.

# pvcreate /dev/sdb1 --uuid yF12vQ-Pcsb-MDXA-D85j-02ci-ivJd-yR92mi --restorefile /etc/lvm/backup/VGData 
 Couldn't find device with uuid yF12vQ-Pcsb-MDXA-D85j-02ci-ivJd-yR92mi.
 Writing physical volume data to disk "/dev/sdb1"
 Physical volume "/dev/sdb1" successfully created

On vérifie les UUIDs :

# pvs -o +uuid
 PV         VG        Fmt  Attr PSize   PFree   PV UUID                               
 /dev/sda2  VGRoot    lvm2 a--  25,59g 18,62g AYR30X-PoeE-4dZi-iexU-XqWw-I9OB-ewOdyx
 /dev/sdb1            lvm2 a--  250,48g 931,51g yF12vQ-Pcsb-MDXA-D85j-02ci-ivJd-yR92mi

On restore définitivement le groupe de volumes :

# vgcfgrestore VGData
 Restored volume group VGData

On vérifie que les groupes de volumes ne renvoient plus d'erreurs :

# vgscan
 Reading all physical volumes.  This may take a while...
 Found volume group "VGRoot" using metadata type lvm2
 Found volume group "VGData" using metadata type lvm2

On active le groupe de volumes qui vient d'être restauré :

# vgchange -ay
 1 logical volume(s) in volume group "VGRoot" now active
 3 logical volume(s) in volume group "VGData" now active

Il reste à remonter le ou les volumes logiques :

# mount /dev/mapper/VGData-LVData /data