Je partage ma récente aventure, après le reboot d'un serveur NFS qui exporte plus de 10Tb en 69 Filesystem.
Au redémarrage, seuls 60 FS sont présents, neufs sont absents.
Par exemple :
PV unknown device VG vgFS58 lvm2 [50.00 GB / 0 free]
mount: special device /dev/mapper/vgFS58-lvfs58 does not exist
Passé les doutes, l'analyse du multipath montre que les FS sont bien présenté au serveur par le NAS mais que les VG sont indiqué comme partial.
vgFS58 8 1 0 wz-pn- 409.97G 0
Il ne s'agit pas de d'activer le VG ou le LV avec vgchange -ay ou lvchange -ay mais de restorer la métadata qui a disparu.
unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
Il fautt retrouver le device et réapliquer la metadata manquante.
Multipath indique les devices :
# multipath -l | grep fs58
lvm6fs58 (36005076305ffc0290000000000002539) dm-286 xx,xx
lvm1fs58 (36005076305ffc0290000000000002535) dm-269 xx,xx
lvm7fs58 (36005076308ffc536000000000000066b) dm-187 xx,xx
Pour vérifier l'état d'un device :
# pvck /dev/dm-269
Could not find LVM label on /dev/dm-269
On est donc sur que le device ne contient pas de metadata, il faut donc la restaurer.
Je sais qu'il s'agit du premier device, pour rechercher dans son id, l'info dans /etc/lvm/archive/vgFS58_00009.vg
Il reste à l'appliquer :
# pvcreate --uuid "p5bjql-fCXc-vTCe-KBuF-2DgF-X2rl-UfZCti" --restorefile /etc/lvm/archive/vgFS58_00009.vg /dev/dm-269
Bingo !
Une fois toutes les métadatas restaurés, le VG redevient disponible :
# vgs vgFS58
VG #PV #LV #SN Attr VSize VFree
vgFS58 8 1 0 wz--n- 409.97G 0
On réactive le LV
# lvchange -ay vgFS58/lvfs58
Reste à scan le FS
# e2fsck /dev/mapper/vgFS58-lvfs58
e2fsck 1.41.9 (22-Aug-2009)
e2fsck: Group descriptors look bad... trying backup blocks...
/dev/mapper/vgFS58-lvfs58: recovering journal
e2fsck: unable to set superblock flags on /dev/mapper/vgFS58-lvfs58
# e2fsck /dev/mapper/vgFS58-lvfs58 -y
e2fsck 1.41.9 (22-Aug-2009)
One or more block group descriptor checksums are invalid. Fix? yes
Et le tour est joué, on peut mount avec succès le FS.
Restait plus que 8 autres FS et environ 20 devices.
Mais tout c'est bien déroulé, il a été possible de récupérer l'accès aux données.
# multipath -l | grep fs58
# grep -i id /etc/lvm/archive/vgFS58_00009.vg
# pvck /dev/dm-269
Au redémarrage, seuls 60 FS sont présents, neufs sont absents.
Par exemple :
PV unknown device VG vgFS58 lvm2 [50.00 GB / 0 free]
mount: special device /dev/mapper/vgFS58-lvfs58 does not exist
Passé les doutes, l'analyse du multipath montre que les FS sont bien présenté au serveur par le NAS mais que les VG sont indiqué comme partial.
vgFS58 8 1 0 wz-pn- 409.97G 0
Il ne s'agit pas de d'activer le VG ou le LV avec vgchange -ay ou lvchange -ay mais de restorer la métadata qui a disparu.
A la recherche des devices perdus
Commence alors la recherche des devices perdus, pour le FS58 il s'agit de 4 devices.unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
unknown device vgFS58 lvm2 a- 50.00G 0
Il fautt retrouver le device et réapliquer la metadata manquante.
Multipath indique les devices :
# multipath -l | grep fs58
lvm6fs58 (36005076305ffc0290000000000002539) dm-286 xx,xx
lvm1fs58 (36005076305ffc0290000000000002535) dm-269 xx,xx
lvm7fs58 (36005076308ffc536000000000000066b) dm-187 xx,xx
Pour vérifier l'état d'un device :
# pvck /dev/dm-269
Could not find LVM label on /dev/dm-269
On est donc sur que le device ne contient pas de metadata, il faut donc la restaurer.
Je sais qu'il s'agit du premier device, pour rechercher dans son id, l'info dans /etc/lvm/archive/vgFS58_00009.vg
Il reste à l'appliquer :
# pvcreate --uuid "p5bjql-fCXc-vTCe-KBuF-2DgF-X2rl-UfZCti" --restorefile /etc/lvm/archive/vgFS58_00009.vg /dev/dm-269
Bingo !
Une fois toutes les métadatas restaurés, le VG redevient disponible :
# vgs vgFS58
VG #PV #LV #SN Attr VSize VFree
vgFS58 8 1 0 wz--n- 409.97G 0
On réactive le LV
# lvchange -ay vgFS58/lvfs58
Reste à scan le FS
# e2fsck /dev/mapper/vgFS58-lvfs58
e2fsck 1.41.9 (22-Aug-2009)
e2fsck: Group descriptors look bad... trying backup blocks...
/dev/mapper/vgFS58-lvfs58: recovering journal
e2fsck: unable to set superblock flags on /dev/mapper/vgFS58-lvfs58
# e2fsck /dev/mapper/vgFS58-lvfs58 -y
e2fsck 1.41.9 (22-Aug-2009)
One or more block group descriptor checksums are invalid. Fix? yes
Et le tour est joué, on peut mount avec succès le FS.
Restait plus que 8 autres FS et environ 20 devices.
Mais tout c'est bien déroulé, il a été possible de récupérer l'accès aux données.
En résumé :
- Rechercher des informations :
# multipath -l | grep fs58
# grep -i id /etc/lvm/archive/vgFS58_00009.vg
# pvck /dev/dm-269
- Restauration metadata
# pvcreate --uuid "p5bjql-fCXc-vTCe-KBuF-2DgF-X2rl-UfZCti" --restorefile /etc/lvm/archive/vgFS58_00009.vg /dev/dm-269
- Contrôle
# vgs vgFS58
- Activacion LV
# lvchange -ay vgFS58/lvfs58
- Vérification du FS
# e2fsck /dev/mapper/vgFS58-lvfs58 -y
- Disponibilité du FS
#mount /dev/mapper/vgFS58-lvfs58 /FS58
Aucun commentaire:
Enregistrer un commentaire