J'ai le problème suivant avec une partition RAID de logiciel RAID1 sur mon système Ubuntu (10.04 LTS, 2.6.32-24-server au cas où cela importerait).
Un de mes disques (sdb5) a signalé des erreurs d'E / S et a donc été marqué comme défectueux dans la baie. La baie a ensuite été dégradée avec un périphérique actif. Par conséquent, j'ai remplacé le disque dur, cloné la table de partition et ajouté toutes les nouvelles partitions à mes tableaux de raid. Après la synchronisation, toutes les partitions se sont bien terminées, avec 2 appareils actifs - sauf l'un d'entre eux. La partition qui a signalé le disque défectueux avant, cependant, n'a pas inclus la nouvelle partition en tant que périphérique actif mais en tant que disque de rechange:
md3 : active raid1 sdb5[2] sda5[1]
4881344 blocks [2/1] [_U]
Un regard détaillé révèle:
root@server:~# mdadm --detail /dev/md3
[...]
Number Major Minor RaidDevice State
2 8 21 0 spare rebuilding /dev/sdb5
1 8 5 1 active sync /dev/sda5
Voici donc la question: comment dire à mon raid de transformer le disque de rechange en disque actif? Et pourquoi a-t-il été ajouté comme appareil de rechange? Recréer ou réassembler le tableau n'est pas une option, car c'est ma partition racine. Et je ne trouve aucun indice à ce sujet dans le Software Raid HOWTO.
Toute aide serait appréciée.
Solution actuelle
J'ai trouvé une solution à mon problème, mais je ne suis pas sûr que ce soit la façon de procéder. En examinant de plus près mon raid, j'ai constaté que sdb5 était toujours répertorié comme périphérique de rechange:
mdadm --examine /dev/sdb5
[...]
Number Major Minor RaidDevice State
this 2 8 21 2 spare /dev/sdb5
0 0 0 0 0 removed
1 1 8 5 1 active sync /dev/sda5
2 2 8 21 2 spare /dev/sdb5
donc la lecture du périphérique sdb5 dans la matrice md3 a toujours abouti à l'ajout du périphérique en tant que pièce de rechange.
Enfin, je viens de recréer le tableau
mdadm --create /dev/md3 --level=1 -n2 -x0 /dev/sda5 /dev/sdb5
qui a fonctionné.
Mais la question reste ouverte pour moi: existe-t-il une meilleure façon de manipuler les résumés dans le superbloc et de dire à la baie de transformer sdb5 d'un disque de rechange en un disque actif? Je suis toujours curieux d'avoir une réponse.