Il y a bien quelque-chose qui pourrait être essayé, ne serait-ce qu’au nom de la science. Mais je ne suis même pas certain que ce soit possible en pratique et cela comporte tellement de risques qu’il faut tout de même sauvegarder.
1 - Vérifier que les LVs du VG soient bien localisés au tout-début du VG. Dans ce cas précis, dans les premiers 600 GOs.
2 - Réduire la taille du Physical Volume supportant le VG avec [mono]pvresize[/mono]. Dans ce cas, à 700 GOs, admettons.
3 - démonter le système de fichiers, arrêter le VG ([mono]vgchange -an vg[/mono] puis [mono]vgremove vg[/mono] ?) puis arrêter le volume RAID1.
4 - mettre en place un device permettant de retrouver le PV sur le tout premier disque à l’aide de [mono]mdadm --examine /dev/premierDisque[/mono] pour trouver l’offset des données en secteurs de 512 octets et de [mono]losetup --offset (offsetSecteurs * 512) -f /dev/premierDisque[/mono] .
5 - Démarrer le VG (avec [mono]vgscan /dev/loopX[/mono] puis [mono]vgchange -a y vg[/mono] ?) et vérifier que les LVs soient bien détectés. Monter le système de fichiers pour le vérifier.
6 - Effacer le début et la fin des 2 autres disques durs qui servaient au volume RAID1 à grands coups de [mono]dd if=/dev/zero of=/dev/sdX[/mono] .
7 - Créer un volume RAID 5 dégradé incluant ces 2 disques durs.
8 - Déplacer les PE du VG du device loop vers le volume RAID5 (avec [mono]pvmove[/mono] ?).
9 - Vérifier que le VG marche bien avec le système de fichiers ETC.
10 - Détruire le device loop avec losetup -d /dev/loopX , effacer le début et la fin du 1er disque dur avec [mono]dd if=/dev/zero …[/mono] .
11 - Ajouter le 1er disque dur au volume RAID5 et laisser le volume se resynchroniser.
Une méthode que j’aurais certainement tenté si c’était sur mon serveur, pour le fun. Mais que je ne peux décemment pas conseiller.
–
AnonymousCoward