LVM sauvegarde ses métadonnées vers /etc/lvm/backup
et /etc/lvm/archive
. En haut de chaque fichier, il vous indiquera l'heure / les données lorsque le fichier a été généré, donc vous aurez probablement une copie des anciennes métadonnées telles qu'elles étaient avant de supprimer le LV. Je pense que la sauvegarde est automatique chaque fois que les métadonnées changent.
Les éléments suivants peuvent être dangereux et destructeurs, alors soyez très prudent et si possible, ayez une sauvegarde complète.
La commande pour restaurer ces sauvegardes de métadonnées de groupe de volumes est vgcfgrestore
. Assurez-vous de faire une copie actuelle de la configuration de travail existante à l'aide de la vgcfgbackup
commande avec l'indicateur -f pour spécifier un fichier différent pour la sortie afin de ne pas modifier les fichiers qui se trouvent dans / etc / lvm / backup ou / etc / lvm / archive. Assurez-vous de différencier la configuration actuelle de la configuration que vous souhaitez restaurer pour vérifier que les seules modifications que vous êtes sur le point d'appliquer sont de recréer le LV récemment supprimé. Avoir une sauvegarde complète de vos données n'est probablement pas une mauvaise idée non plus. Vous pouvez également envisager de contacter votre fournisseur Linux pour obtenir de l'aide / des conseils si vous êtes sous contrat de support avant de continuer car je n'ai jamais eu à le faire moi-même.
Bonne chance.
"Pourriez-vous s'il vous plaît être plus précis pour trouver EFROM et ETO à partir du fichier de sauvegarde? Tous les lv ont un" start_extend "à partir de 0 dans mon fichier de sauvegarde, donc je suis un peu perdu :) Merci! - user186975 24 août 13 à 17 heures : 06 "
Ok, je serai très précis ... avec le moyen le plus simple de récupérer un volume logique.
Exemple:
1 - J'ai supprimé mon volume logique!
2 - La première chose à faire est de rechercher le fichier d'archive dans /etc/lvm/archive/vg1_(xxxxx).vg. Je peux le faire, en regardant simplement la date à laquelle j'ai supprimé le volume logique!
3- Je l'ai trouvé!
Date où j'ai fait le déménagement !!! ... c'était il y a quelques minutes ..
4 - Voyons le dossier!
5 - Faites un test avant de le récupérer!
6 - Ok, maintenant répétez la ligne de commande, sans le (--test)
7 - Vérifiez-le!
8 - Si la logique n'était pas active, faites-le!
C'est tout
J'espère que cela peut aider d'autres personnes qui recherchent cette solution!
la source
La chose la plus simple à récupérer à partir de lvremove (en supposant que vous n'ayez pas écrit dans la mesure où résidait le LV) est:
Il suffit de trouver la sauvegarde de vos métadonnées dans / etc / lvm / archive et de comprendre
a) dans quelle mesure le LV résidait-il (EFROM, ETO)
b) sur quels PV votre LV résidait et qui s'étend sur le PV qu'il utilisait (PFROM, PTO)
Après avoir obtenu ces informations, vous créez un nouveau LV de la même taille sur les mêmes extensions PV sans essuyer les 8 premiers Ko du LV:
la source
(Comme l'a répondu thermoman plus tôt), le moyen le plus simple de recréer un volume LVM supprimé est de le créer avec lvcreate sans réduction à zéro et de vous assurer qu'il sera dans la même position sur le disque. (La commande de la réponse de thermoman n'a pas fonctionné.)
Vérifiez la taille et la position du volume logique supprimé telles qu'elles étaient avant la suppression en lisant les fichiers dans / etc / lvm / archive. La taille du volume est
extent_count
desegment1
(ou somme dessegment*/extent_count
valeurs s'il avait plusieurs étendues). La position est dans lastripes
section après l'alias de volume physique (par exemplepv0
).Par exemple, la section de volume pourrait ressembler à ceci:
La taille de ce
example
volume était de 1024 et il était situé sur / dev / somedisk à partir de l'étendue 30720.Calculez la dernière étendue comme start + size -1 = 30720 + 1024 - 1 = 31743. Pour recréer ce problème de volume, procédez comme suit:
la source
J'avais une situation similaire. J'avais tous les PV contenant les LV souhaités, mais mon VG montrait des PV manquants et 0 LV. J'ai récupéré en faisant ce qui suit:
pvs
pour collecter les UUID pour tous les lecteurs.physical_volumes
section, définissez lesdevice =
lignes pour qu'elles correspondent au périphérique / UUID actuel signalé parpvs
, effacez tous les"MISSING"
indicateurs et supprimez toutes lespvN
sections qui manquaient réellement.logical_volumes
section, supprimez toutes les listes qui avaient des rayures sur lespvN
sections qui n'existaient plus.C'était ça, alors j'ai couru
vgcfgrestore --test vg -f /root/dangerously_edited.vg
--test
option.J'ai atteint ma situation particulière en étendant le VG avec les PV sdg et sdh. Ensuite, j'ai créé un nouveau LV, en spécifiant
/dev/sdg /dev/sdh
sur la ligne de commande afin que je sache que le nouveau LV était sur ces disques. Ensuite, j'ai déplacé ces disques uniquement sur une nouvelle machine. L'ancienne machine était très contrariée par les disques manquants, et lorsque je les ai retirés de force, elle a également supprimé TOUS les LV. Bummer.La prochaine fois, bien sûr, je vais créer un nouveau VG pour éviter ce problème.
la source