RAID1 logiciel sous GNU/Linux. (partie 2/2)
Si malheureusement un de nos disque rend l'âme ou montre des signes de faiblesse voici comment reconstruire notre RAID1.
Vérification
Il se peut qu'une ou toutes les partitions de votre raid soit dégradé pour vérifier l'état de votre RAID procéder comme ceci :
# cat /proc/mdstat Personalities : [raid0] [raid1] md0 : active raid1 sda2[0] 1000384 blocks [2/1] [U_] md2 : active raid1 sda4[0] sdb4[1] 8560576 blocks [2/2] [UU] md1 : active raid1 sda3[0] sdb3[1] 8000448 blocks [2/2] [UU]
Ici on constate que le disque "sdb" n'a qu'une partition en défaut dans la grappe md0. Mais nous allons retirer l'ensemble des partitions du disque pour son remplacement.
Retirer les partitions sdbX de leurs volumes RAID
Dans un premier temps nous devons marquer les partitions du disque sdb en erreur.
# mdadm --manage /dev/md1 --fail /dev/sdb3
Puis on retire la partition du volume:
# mdadm --manage /dev/md1 --remove /dev/sdb3
Sans oublier de répéter l'opération sur l'ensemble des grappes.
Ajouter les nouvelles partitions dans les volumes RAID
Après avoir remplacé physiquement le disque, il faut comme lors de la création du RAID, s'assurer que le partitionnement est identique au disque en place et vérifier le type de partition:
fdisk -l /dev/sdb Disk /dev/sdb (Sun disk label): 64 heads, 32 sectors, 17272 cylinders Units = cylinders of 2048 * 512 bytes Device Flag Start End Blocks Id System /dev/sdb1 0 122 124928 fd Linux native /dev/sdb2 122 1099 1000448 fd Linux raid autodetect /dev/sdb3 1099 8912 8000512 fd Linux raid autodetect /dev/sdb4 8912 17272 8560640 fd Linux raid autodetect
Tout est correct on insère donc les partitions dans leurs volumes respectifs.
# mdadm --manage /dev/md1 --add /dev/sdb3
Le RAID va alors se reconstruire automatiquement.
Petite astuce vous pouvez copier le MBR d'un disque sain sur l'autre et ainsi dupliquer la table des partitions (généralement contenu dans les 512 premiers octets du disque.) comme suit:
# dd if=/dev/sda of=/dev/sdb bs=512 count=1
Amusez vous bien !