[Linux] RAID qui ne se met pas en route à l'amorçage

Benoit SPECKEL Benoit.Speckel@::1
Mer 4 Oct 14:42:23 CEST 2006


On Wed, Oct 04, 2006 at 02:15:41PM +0200, Éric Bischoff wrote:
> Le Mardi 3 Octobre 2006 18:59, Benoit SPECKEL a écrit :
> > Il faut voir le contenu d'initrd. Si l'initrd en question n'est pas
> > un initramfs (archive cpio, récent), c'est un fichier contenant un
> > filesystem compressé.
> > La séquence suivante devrait marcher :
> > 	gunzip < /initrd.img-2.6.8-2-686 > /tmp/initrd.img-2.6.8-2-686
> > 	mount -ro loop /tmp/initrd.img-2.6.8-2-686 /mnt
> > S'il réclame le type du filesystem, avec un noyau Debian, c'est
> > probablement du cramfs.
> 
> Bon, c'était bien ça.
> 
> Le fichier image (l'initrd) n'est pas compressé avec gzip. Néanmoins, il se 
> monte avec le type cramfs.
Il doit asser comresser en natifif, celui-là, mais pas modifiable.

> Dedans, on trouve un script d'initialisation nommé "script". Et dans ce 
> fichier il y a :
> 
> # grep mdadm initrd/script
> mdadm -A /dev/md1 -R -u 
> d133e9c8:b1e776f7:ea6a85a6:0b9dc348 /dev/hda2 /dev/hdc2
> mdadm -A /dev/md1 -R -u 
> d133e9c8:b1e776f7:ea6a85a6:0b9dc348 /dev/hda2 /dev/hdc2
> 
> "/dev/hdc2" était juste quand cette machine a été installée, mais depuis un 
> étudiant a changé le deuxième disque de contrôleur (car la nappe était trop 
> courte !!!). J'avais alors corrigé en "/dev/hdb2" dans /etc/mdadm/mdadm.conf, 
> mais pas dans l'initrd...
> 
> Il y a à présent deux solutions :
> - acheter une nappe plus longue, rebrancher le disque sur le second 
> contrôleur, changer à nouveau /etc/mdadm/mdadm.conf
> - ou alors modifier l'initrd
> 
> Je préfère la première solution. C'est mieux si les disques RAID sont sur des 
> contrôleurs différents.
> 
> Mais juste pour ne pas mourir idiot, si j'avais choisi la seconde solution, 
> comment aurais-je pu modifier l'initrd ? Quand je le monte en -t cramfs, j'ai 
> l'impression que je n'arrive pas à le monter en read/write.
> 
> Bon, il y aurait la solution de recompiler le noyau. Mais encore ?
En passant par mkinitrd (package initrd-tools), ce qui est normalement
fait à l'installation du noyau. Dans ton cas, quelque-chose comme :
	mkinitrd -o /initrd.img-2.6.8-2-686 2.6.8-2-686
(et pour ceux qui comme moi sont en lilo... ne pas l'oublier)

-- 
Cordialement,

Benoit SPECKEL
IPHC - Bat 22                e-mail: speckel@::1
23 rue du Loess               voice: 03 88 10 68 23
BP 28                           fax: 03 88 10 62 34
F-67037 STRASBOURG Cedex 2


Plus d'informations sur la liste de diffusion linux