Créer un initrd avec mkinitrd

boot_redhat

Recréer l’initrd est parfois nécessaire quand un serveur ne veut plus démarrer (kernel panic).

Syntaxe

            mkinitrd <option> <nom_initrd> <version_kernel>

Comment Faire : Démarrer en mode rescue
  •  Démarrer sur un live CD n’importe quelle distribution, mais c’est toujours mieux si on  la même que sur la machine.
  • Tapez : linux rescue
  • Sur Redhat il suffit de suivre les indications de l’utilitaire. Tous les files systèmes seront montés dans /mnt/sysimage.

Parfois cela ne marche pas aussi, c’est-à-dire les FS ne sont pas montés alors il faut le faire à la main.

  • Monter les FS en “read-write”

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

mount --bind /proc /mnt/sysimage/proc
mount --bind /dev /mnt/sysimage/dev
mount --bind /sys /mnt/sysimage/sys

[/pastacode]

  • chrooter le FS

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

chroot /mnt/sysimage

[/pastacode]

Créer le initrd
  • Faire une sauvegarde de l’initrd actuel

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

cp -p /boot/initrd-$(uname -r).img /boot/initrd-$(uname -r).img.bak

[/pastacode]

  • Créer un initrd avec la version actuel du kernel

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

mkinitrd -f -v /boot/initrd-$(uname -r).img $(uname -r)

[/pastacode]

-f : force l’ecriture sur l’initrd existant, mail il est aussi possible de le créer sous un autre nom
-v : mode verbeux

  • Ou créer un inirtd sur une autre version de kernel

[pastacode lang=”bash” message=”” highlight=”” provider=”manual”]

mkinitrd -f -v /boot/initrd-2.6.18-371.6.1.el5.img 2.6.18-371.6.1.el5

[/pastacode]

Reboot

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *