FreeBSD - Installer Grub


1. Introduction

1.1. Ce document
1.2. Configuration de l'exemple traîté

2. Installer le programme

2.1. A partir d'un package
2.2. A partir des ports

3. Configuration

3.1. Création du répertoire de configuration
3.2. Fichier de menu

4. Installer Grub dans le MBR

4.1. Créer une disquette de boot Grub
4.2. Installation finale
4.3. reboot

5. Copyright


1. Introduction back

1.1. Ce document

Ce document traîte de l'installation de Grub à partir de FreeBSD 4.3-STABLE. Les liens suivants auront peut-être changés quand vous lirez ces lignes.

1.2. Configuration de l'exemple traîté

  • 1er disque dur (hd0) : 1 partition (hd0,0) Windows 98
  • 2ème disque dur (hd1) : 1 slice (hd1,0) FreeBSD 4.3-STABLE

    2. Installer le programme back

    2.1. A partir d'un package

    C'est aussi simple que de taper la commande suivante en root (si vous êtes connecté à Internet):

    prompt# pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4-stable/All/grub-0.5.96.tgz
    

    Sinon, téléchargez le package à l'adresse suivante ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4-stable/All/grub-0.5.96.tgz, et tapez ensuite en root:

    prompt# pkg_add chemin_vers_grub/grub-0.5.96.tgz
    

    2.2. A partir des ports

    Si vous avez une connexion à Internet, vous pouvez directement taper ceci, en root:

    prompt# cd /usr/ports/sysutils/grub
    prompt# make install clean
    

    Sinon, téléchargez les sources de Grub ici: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/grub-0.5.96.tar.gz, puis copiez ce fichier dans /usr/ports/distfiles/, et en root tapez:

    prompt# cd /usr/ports/sysutils/grub
    prompt# make install clean
    

    3. Configuration back

    3.1. Création du répertoire de configuration

    Grub souhaite se trouver dans un répertoire bien précis: /boot/grub. Voici comment créer son répertoire de configuration (en root):

    prompt# mkdir /boot/grub
    prompt# cd /boot/grub
    prompt# cp /usr/local/share/grub/i386-freebsd/* .
    

    3.2. Fichier de menu

    Grub regarde dans le fichier /boot/grub/menu.lst pour savoir ce qu'il doit faire lors de son chargement au boot de la machine. Vous allez créer ce fichier avec votre éditeur favoris, et le remplir comme ceci:

    default 0	# quel OS booter par defaut, ici FreeBSD
    timeout 5	# le timeout
    
    # FreeBSD: choix 0
    title	FreeBSD		# Le titre a afficher dans le menu Grub
    root	(hd1,0,a)	# 2eme disque, 1er slice, disklabel a (/)
    kernel	/boot/loader	# Le loader de FreeBSD
    
    # Windows 98: choix 1
    title	Windows 98	# Le titre
    root	(hd0,0)		# 1er disque, 1ere partition
    makeactive		# Rendre la partition active
    chainloader +1		# Utiliser le boot de Windows
    

    4. Installer Grub dans le MBR back

    4.1. Créer une disquette de boot Grub

    Je vous conseil de créer une disquette de boot Grub, elle vous sera peut-être utile. Elle vous permettra de choisir quelle partition booter, quel OS booter si vous avez des problèmes avec votre MBR. Voici comment faire, sous FreeBSD après avoir inséré une disquette dans votre lecteur:

    prompt# cd /boot/grub
    prompt# dd if=stage1 of=/dev/fd0 bs=512 count=1
    1+0 records in
    1+0 records out
    512 bytes transferred in 1.181812 secs (433 bytes/sec)
    prompt# dd if=stage2 of=/dev/fd0 bs=512 seek=1
    155+1 records in
    155+0 records out
    79360 bytes transferred in 3.687975 secs (21519 bytes/sec)
    

    4.2. Installation finale

    Il vaut mieux installer Grub dans le MBR de votre disque d'amorce. Vous pourrez comme cela l'enlever facilement sous DOS avec la commance fdisk /mbr. Votre disque d'amorce est certainement le disque 0 (le 1er disque), vous pouvez vérifier cela dans le BIOS, au niveau de la séquence de boot (Boot Sequence). Ce doit être dans l'ordre: A, C.

    Donc, pour installer Grub à partir de FreeBSD, tapez ceci, en root:

    prompt# grub
    Probing devices to guess BIOS drives. This may take a long time.
    
    
        GRUB  version 0.5.96  (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> root (hd1,0,a)
     Filesystem type is ffs, partition type 0xa5
    
    grub> setup (hd0)
     Checking if "/boot/grub/stage1" exists... yes
     Checking if "/boot/grub/stage2" exists... yes
     Checking if "/boot/grub/ffs_stage1_5" exists... yes
     Running "embed /boot/grub/ffs_stage1_5 (hd0)"...  14 sectors are embedded.
    succeeded
     Running "install /boot/grub/stage1 d (hd0) (hd0)1+14 p (hd1,0,a)/boot/grub/stage2"... succeeded
    Done.
    
    grub> quit
    

    Nous pouvons noter qu'il a fallut taper les deux commandes: root et setup.

  • La premiere spécifie la partition sur laquelle Grub va trouver ses fichiers de configurations. Puisque nous les avons placés dans /boot/grub du disque 1 (2ème disque) contenant FreeBSD, nous passons en paramètre à cette commande (hd1,0,a). Le a précise qu'il s'agit du disklabel répertoire racine de FreeBSD (le répertoire /).
  • La deuxième commande met à jour le MBR pour utiliser Grub. Le MBR que l'on utilise est celui du disque dur 0 (le 1er disque). On lui passe donc comme paramètre (hd0).

    4.3. reboot

    Vous pouvez rebooter et tester votre nouvelle installation de Grub.


    5. Copyright back

    Ce document est fournis "tel qu'en l'état" par l'auteur (gomor@gomor.org) et il n'est donné aucune garantie, implicite ou explicite, quant à son utilisation commerciale, professionnelle ou autre.

    L'auteur ne peut en aucun cas être tenu pour responsable de quelque dommage ou préjudice direct, indirect, secondaire ou accessoire (y compris les pertes financières dues au manque à gagner, à l'interruption d'activités, ou la perte d'informations et autres) découlant de l'utilisation de la documentation ou de l'impossibilité d'utiliser celle-ci, et dont l'utilisateur accepte l'entière responsabilité.

    Par ailleurs, ce document peut être copier partiellement ou entièrement, à condition que l'auteur soit cité, et que son adresse eMail (gomor@gomor.org) soit donnée, dans cette copie.


    Dernière mise à jours: Thu Nov 8 22:08:02 CET 2001