Tag Archive for Boot loader

Grub et les démarrages un peu RAID !

Vous avez installé un serveur sous Linux, c’est bien !
Vous utilisez Grub pour le démarrage (boot loader), c’est très bien ! (laissons de côté la polémique Grub vs Lilo !).
Vous avez configuré vos disques en RAID1 logiciel, c’est très très bien ! (laissons de côté également la polémique RAID hard vs RAID soft !).
Vous avez configuré le RAID1, y compris pour les partitions de démarrage /boot, c’est une bonne idée … mais, il faut s’assurer que le second disque puisse démarrer (booter) sans encombres s’il arrive un problème au premier, et qu’il ne cherchera pas à accéder aux partitions du disque défaillant.

Pour cela, il est nécessaire de configurer Grub sur les deux disques indépendamment. Voila donc la démarche à suivre :

  1. Lancer Grub en mode « ligne de commande » avec les bons droits :
    monlinux:~ # grub
    
    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)
    
    [ Minimal BASH-like line editing is supported.  For the first word, TAB
      lists possible command completions.  Anywhere else TAB lists the possible
      completions of a device/filename. ]
    grub>

  2. Définir le premier disque hd0 qui correspond à /dev/sda (ou /dev/hda dans le cas de disque IDE) comme racine pour les commandes de configuration :
    grub> root (hd0,0)
    root (hd0,0)
     Filesystem type is ext2fs, partition type 0xfd
    grub>

    (hd0,0 : premier disque hd0, première partition 0)

  3. Demander l’installation des données de démarrage sur ce disque :
    grub> setup (hd0)
    setup (hd0)
     Checking if "/boot/grub/stage1" exists... yes
     Checking if "/boot/grub/stage2" exists... yes
     Checking if "/boot/grub/e2fs_stage1_5" exists... yes
     Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
    succeeded
     Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (...)
                             (hd0,0)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
    Done.
    grub>

  4. Définir le deuxième disque (/dev/sdb ou /dev/hdb si IDE) comme racine mais en s’y référant comme premier disque pour grub (hd0) et installation des données de démarrage comme précédemment :
    grub> device (hd0) /dev/sdb
    device (hd0) /dev/sdb
    grub> root (hd0,0)
    root (hd1,0)
     Filesystem type is ext2fs, partition type 0xfd
    grub> setup (hd0)
    setup (hd0)
    Checking if "/boot/grub/stage1" exists... yes
    Checking if "/boot/grub/stage2" exists... yes
    Checking if "/boot/grub/e2fs_stage1_5" exists... yes
    Running "embed /boot/grub/e2fs_stage1_5 (hd1)"...  17 sectors are embedded.
    succeeded
    Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (...)
                             (hd0,0)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
    Done.
    grub>

  5. Et pour finir, on sort de la ligne de commande Grub avec un petit « quit » (logic ! ) :
    grub> quit
    quit
    monlinux:~ #

J’espère que ces quelques commandes vous ont été utiles comme elles l’ont été pour moi. N’hésitez pas à me laisser des commentaires, questions ou suggestions d’amélioration.