[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