• # Ma méthode avec GRUB

    Posté par . En réponse au journal RAID + boot + LILO : mini-mini HOWTO. Évalué à 3.

    Je viens de terminer l'install de deux serveurs supermicro avec la config suivante:

    bi xeon HT 2.8Ghz, 2 Go de ram, 2 disques maxtor 40 Go IDE (hda et hdc), 2 interfaces e1000 (gigabit ethernel de chez Intel) (bonnes machines, très bien supportées sous linux, pas chères du tout)

    1 - j'installe debian woody normalement sur hda
    2 - je mets à jour en passant en testing pour les packages importants (raidtools2, kernel-source-2.4.26, ...)
    3 - j'installe kernel-package et un environnement de compil. Je compile mon noyau avec en dur md, raid1, ext3, driver réseau
    4 - j'installe grub et je vire définitivement lilo
    5 - je reboote sur le nouveau noyau et je vérifie que tout fonctionne correctement.
    6 - la table des partitions sur hda est alors la suivante:

    /dev/hda1 /boot ext3 32 Mo (type linux)
    /dev/hda5 swap swap 2048 Mo (type swap)
    /dev/hda6 / ext3 512 Mo (type linux)
    /dev/hda7 /tmp ext3 512 Mo (type linux)
    /dev/hda8 /usr ext3 2048 Mo (type linux)
    /dev/hda9 /var ext3 4096 Mo (type linux)
    /dev/hda10 /space ext3 ~30 Go (type linux)

    7 - je crée le fichier /etc/raidtab sur le modèle suivant:
    raiddev /dev/md1
    raid-level 1
    nr-raid-disks 2
    nr-spare-disks 0
    persistent-superblock 1
    chunk-size 4
    device /dev/hda1
    raid-disk 0
    device /dev/hdc1
    raid-disk 1

    [ avec un md(n) pour chaque couple {hda,hdc}(n) sauf le swap ]

    8 - je reboote en read-only (linux -b)
    9 - je re-partitionne hda en changeant le type de toutes les partitions linux en raid-autodetect (0xfd)
    10 - je partitionne hdc à l'identique de hda
    11 - je reboote pour activer les nouvelles tables de partition (toujours en r/o avec linux -b)
    12 - je crée les volumes RAID (mkraid -R /dev/md1 jusqu'à md10) et j'attends la reconstruction des volumes RAID (environ 1h pour 40 Go, voir /proc/mdstat)
    13 - je force le check des partitions (e2fsck -f /dev/md1 jusqu`à md10)
    14 - je redimensionne les partitions pour qu'elles soient consistantes avec la table des volumes RAID (resize2fs /dev/md1 ...)
    15 - je remonte / en r/w (mount / -o remount,rw)
    16 - je modifie la fstab pour tenir compte des volumes RAID
    17 - je monte le /boot en RAID et je modifie le menu.lst de grub comme suit:

    # Linux
    title GNU/Linux (RAID disk 0)
    root (hd0,0)
    kernel /vmlinuz-2.4.26 ro root=/dev/md6

    title GNU/Linux (RAID disk 1)
    root (hd1,0)
    kernel /vmlinuz-2.4.26 ro root=/dev/md6

    # Reinstall GRUB
    title (Re-)Install GRUB (RAID disk 0)
    root (hd0,0)
    setup (hd0)

    title (Re-)Install GRUB (RAID disk 1)
    root (hd1,0)
    setup (hd1)

    18 - je remonte les partitions précédentes en r/o
    19 - je reboote une dernière fois, et je réinstalle GRUB sur les deux disques via les entrées correspondantes du menu
    20 - Ca marche !

    Prochaine étape: tout passer en LVM !