2.4. Terminologie relative à GRUB

Un des points fondamentaux à maîtriser avant d'utiliser GRUB est la façon dont le programme fait référence aux périphériques, tels que votre disque dur et les partitions. Cette information est très importante lorsque vous configurez GRUB pour lui permettre le démarrage de plusieurs systèmes d'exploitation.

2.4.1. Noms de périphérique

Supposons par exemple qu'un système ait plus d'un disque dur. Le premier disque dur d'un système est appelé (hd0) par GRUB. La première partition de ce disque est appelée (hd0,0) et la cinquième partition du second disque est appelée (hd1,4). En général, les règles de nomination pour les systèmes de fichiers, lorsque l'on utilise GRUB, se présentent comme ceci:

(<type-de-périphérique><numéro-périphérique-bios>,<numéro-partition>)

Les parenthèses et la virgule sont très importantes dans les conventions de désignation des périphériques. <type-de-périphérique> se rapporte périphérique spécifié: disque dur (hd) ou ou disquette (fd).

The <numéro-périphérique-bios> est le numéro du périphérique en fonction du BIOS du système, en commençant à 0. Le disque dur IDE primaire est numéroté 0, alors que le disque dur IDE secondaire est numéroté 1. La façon dont l'ordre est établi est très proche de la façon dont le noyau de Linux dispose les périphériques avec des lettres. Là où la lettre a dans hda se rapporte à 0, la lettre b dans hdb se rapporte à 1 et ainsi de suite.

NoteRemarque
 

Le système de numérotation de GRUB pour les périphériques commence par 0 et non pas 1. Le non respect de cette distinction est la source des erreurs les plus courantes commises par les nouveaux utilisateurs GRUB.

L'élément <numéro-partition> se rapporte au numéro d'une partition spécifique sur un périphérique disque. Comme pour l'élément <numéro-de-périphérique-bios>, la numérotation des partitions commence par 0. Même si la plupart des partitions sont désignées par des numéros, si votre système utilise des partitions BSD, celles-ci seront désignées par des lettres, comme a ou c.

GRUB fait appel aux règles suivantes pour désigner des périphériques et partitions:

2.4.2. Noms de fichiers et listes des blocs

En saisissant des commandes pour GRUB qui impliquent un fichier, comme une liste de menu qui permet le démarrage de plusieurs systèmes d'exploitation, il est impératif d'inclure le fichier immédiatement après avoir désigné le périphérique et la partition.

Un exemple de spécification pour un nom de fichier absolu se présente sous le format suivant:

(<type-de-périphérique><numéro-périphérique-bios>,<numéro-partition>)/chemin-d'accès/ vers/fichier

La plupart du temps, un utilisateur indiquera des fichiers en spécifiant le chemin d'accès sur cette partition plus le nom du fichier.

Vous pouvez également indiquer à GRUB des fichiers qui n'apparaissent pas dans le système de fichiers, tel qu'un chargeur de chaîne par exemple qui apparaît dans les tous premiers blocs d'une partition. Pour indiquer ces fichiers, vous devez fournir une liste de blocs qui explique à GRUB, bloc par bloc, l'emplacement du fichier sur la partition. Étant donné qu'un fichier peut être constitué de plusieurs blocs, il existe une manière particulière d'écrire une liste de blocs. Chaque emplacement de section de fichier est décrit par un numéro de bloc décalé, suivi d'un nombre de blocs après ce point de décalage; les sections sont reliées entre elles dans un ordre défini selon les virgules placées entre les différents élément.

Prenons l'exemple de la liste de blocs suivante pour illustrer cette notion:

0+50,100+25,200+1

Cette liste de blocs indique à GRUB qu'il doit utiliser un fichier commençant au premier bloc de la partition et qui utilise les blocs 0 à 49, 99 à 124, et 199.

Savoir comment écrire des listes de blocs est très utile lorsque GRUB doit charger des systèmes d'exploitation qui utilisent le chargement de chaîne, comme Microsoft Windows. Vous pouvez laisser tomber le décalage de bloc si vous commencez au bloc 0. Par exemple, le fichier de chargement de chaîne dans la première partition du premier disque dur devrait s'appeler ainsi:

(hd0,0)+1

Vous pouvez également utiliser la commande chainloader suivante avec un mode d'indication de liste de blocs similaire à la ligne de commande GRUB après avoir spécifié le bon périphérique et la bonne partition et en étant connecté en tant que root:

chainloader +1

2.4.3. Système de fichiers root de GRUB

Certains utilisateurs sont désorientés par l'emploi du terme "système de fichiers root" dans GRUB. Il est important de se rappeler que le système de fichiers root de GRUB n'a rien à voir avec le système de fichiers root de Linux.

Par système de fichiers root de GRUB on désigne la partition racine d'un périphérique donné. GRUB exploite notamment ces informations pour monter le périphérique et procéder au chargement des fichiers.

Avec Red Hat Linux, une fois que GRUB a chargé sa propre partition root (qui est l'équivalent de la partition /bootet contient le noyau Linux), la commande kernel peut être exécutée, avec l'emplacement du fichier de noyau en option. Lorsque le noyau Linux démarre, il établit le système de fichiers Linux auquel les utilisateurs sont habitué. Le système de fichiers root de GRUB et ses montages sont oubliés; ils ne servaient qu'au démarrage du fichier du noyau.

Pour plus d'informations, lisez les notes relatives aux commande root et kernel contenues dans Section 2.6 Les commandes GRUB.