[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[SOLVED] Re: raid 1 qui foire ?



Bonjour la liste,

Bon je suis de retour et je me suis attaqué au remplacement du disque
dur (sda) qui me donnait des soucis. La procédure est maintenant terminée avec
succès. Pour les archives et pour ceux qui se retrouveraient dans la même
situation que moi, voici comment j'ai fait.

1) mise en fail et retrait du disque défaillant 

mdadm /dev/md0 --fail /dev/sda1
mdadm /dev/md0 --remove /dev/sda1

et pareil pour tous les 8 autres (j'en avais 9). Le système ne tourne
maintenant que sur une patte, croisons les doigts...

2) Remplacement du disque dur

Alors que la machine est toujours allumée, je retire l'alimentation et
le câble sata de l'ancien disque, le retire, et le remplace par le
nouveau, le connecte et branche l'alimentation. syslog me montre que le
nouveau disque est vu sous le nom /dev/sdc. (Au premier redémarrage, il
deviendra /dev/sda, mais pour le moment c'est sdc.)

3) Création des partitions sur le nouveau disque.

Pour ne pas faire de bêtise, j'utilise sfdisk pour reprendre la même
configuration du disque qui tourne pour la mettre sur le nouveau.

sfdisk --dump /dev/sdb | sfdisk /dev/sdc

4) Reconstruction

Il faut maintenant reconstruire les arrays

mdadm --manage /dev/md0 --add /dev/sdc1

et ainsi de suite pour les 8 autres. Un 

watch cat /proc/mdstat

permet de voir l'évolution de la reconstruction en direct. Cette étape
prend du temps bien évidemment. Après une heure environ, tous mes arrays
sont reconstruits. 

5) Renseignement de /etc/mdadm/mdadm.conf

Ce fichier contient la description des disque utilisés pour le raid, il
est donc actuellement obsolète. Un

mdadm --detail --scan >> /etc/mdadm/mdadm.conf

ajoute à la fin du fichier les bonnes valeurs. J'ai commenté les
anciennes juste au-dessus. Aussi cette commande ajoute un champs «
metadata=00.90 » dont je ne connais pas la signification mais qui
renvoie une erreur au redémarrage de la machine. Je les ai effacé (mais
pas encore redémarré depuis...).

6) Grub

Pour pouvoir quand même redémarrer au cas où un disque me lâche, il faut
installer grub dans les deux disques.

# grub
> root (hd0,0)
> setup (hd0)
> root (hd1,0)
> setup (hd1)
> exit

Et ajouter une ligne dans le /boot/grum/menu.lst (merci Daniel !)

default 0
fallback 1 

et ajouter une entrée en deuxième position :

title           Debian GNU/Linux, kernel 2.6.30-1-amd64
root            (hd0,0)
kernel          /vmlinuz-2.6.30-1-amd64 root=/dev/md1 ro
initrd          /initrd.img-2.6.30-1-amd64

title           Debian GNU/Linux, kernel 2.6.30-1-amd64
root            (hd1,0)
kernel          /vmlinuz-2.6.30-1-amd64 root=/dev/md1 ro
initrd          /initrd.img-2.6.30-1-amd64


Observez la ligne root.

Voilà tout semble prêt pour un redémarrage. Ce que je fait, mais le
système se bloque sur un kernel panic dû à un problème de swap. Pas
grave j'éteins sauvagement et rallume. Le système démarre bien mais les
arrays sont maintenant dégradés et il faut donc les resynchroniser, ce
qui se fait tous seul maintenant.


Mon système semble maintenant en parfaite santé, je vais pouvoir aller
dormir du sommeil du Sage (si mon petit dernier de 5 mois me laisse,
mais ça c'est une autre histoire...)


Avec le disque dur qui me donnait des soucis, je ne sais pas encore ce
que je vais faire, peut-être une grosse partition test, on verra. Si
vous avez des idées, n'hésitez pas à m'en faire part.

Merci à tous pour vos conseils avisés.


Steve


PS : quelle est la meilleure traduction en français de « array » ?


Reply to: