Configuration de LILO

L'installation de LILO est quasiment un passage obligé sur les ordinateurs utilisant Linux, car c'est l'un des gestionnaires d'amorçage les plus puissants. Il permet de démarrer Linux comme tout autre système d'exploitation très simplement, en donnant le nom du système à lancer lors de l'amorçage. Il est bien entendu possible de lancer un système par défaut, et de donner un temps d'attente avant de choisir cette option si l'utilisateur n'a rien saisi.

LILO est constitué de deux parties. La première partie peut s'installer sur le secteur principal d'amorçage du disque dur (« MBR »), ou sur le secteur de boot de n'importe quelle partition. Comme on l'a déjà indiqué plus haut, il est fortement recommandé d'installer cette partie de LILO sur le secteur de boot de la partition Linux, afin d'éviter qu'elle ne soit écrasée par le DOS ou par Windows. La deuxième partie est enregistrée directement dans la partition Linux. Elle contient les informations nécessaires pour pouvoir charger les différents systèmes d'exploitation gérés. Bien entendu, la première partie est capable de retrouver directement la deuxième sur le disque dur, car lors de l'amorçage, les systèmes de fichiers de Linux ne sont pas encore chargés.

LILO utilise le fichier de configuration /etc/lilo.conf. Ce fichier contient la description des différents systèmes d'exploitation que LILO doit proposer au démarrage. Les options les plus importantes de ce fichier sont les suivantes :

La suite du fichier lilo.conf décrit les différentes configurations que LILO peut lancer. Les sections de configuration permettant de charger Linux ont le format suivant :

image = noyau
root = root_device
label = nom
noyau est le chemin complet sur le noyau de Linux à charger, root_device est le nom complet du fichier spécial de périphérique contenant le système de fichier root et nom est le nom de la configuration tel qu'il devra être saisi à l'invite de LILO. L'exemple donné ci-dessous permet de charger le noyau /boot/vmlinuz en utilisant la partition /dev/hda2 comme partition racine :

image = /boot/vmlinuz
root = /dev/hda2
label = linux

Si vous désirez créer une section de configuration permettant de lancer un système DOS (ou Windows 9x), vous pouvez utiliser le modèle suivant :

other = partition
table = disque
label = nom
partition est la partition où se trouve le système DOS à lancer, disque est le disque contenant la table des partitions utilisée par ce système, et nom est le nom de cette configuration. Vous pouvez vous inspirer de l'exemple fourni ci-dessous :

other = /dev/hda1
table = /dev/hda
label = dos

qui permet de lancer le système situé sur la première partition du premier disque IDE.

L'exemple donné ci-dessous permet de donner la possibilité de charger Linux ou le DOS, en lançant Linux par défaut au bout de 10 secondes. Le DOS est installé sur la première partition, et Linux utilise la deuxième et la troisième partition respectivement pour y stocker son noyau et sa partition racine. LILO est ici installé sur la partition contenant le noyau de Linux :

# Exemple de fichier de configuration /etc/lilo.conf :

# Options générales :
boot = /dev/hda2
read-only
prompt
timeout=100

# Première configuration (Linux) :
image = /dev/hda2
root = /dev/hda3
label = linux

# Deuxième configuration (DOS) :
other = /dev/hda1
table = /dev/hda
label = dos

Remarquez que si l'on utilise /dev/hda à la place de /dev/hda2 après l'option boot, LILO s'installera sur le MBR du disque et non pas sur le secteur de boot de Linux. Dans ce cas, vous prendrez des risques si vous réinstallez le système DOS, car celui-ci écrasera le MBR de votre disque, supprimant ainsi LILO. Si vous désirez poursuivre dans cette voie (ce qui peut être nécessaire si Linux est installé sur un disque esclave par exemple), vous pouvez réaliser une sauvegarde de votre MBR à l'aide de la commande suivante :

dd if=/dev/hda of=fichier bs=512 count=1
fichier est le nom du fichier devant recevoir l'image du MBR. La restauration de votre MBR pourra alors être effectuée simplement avec la commande inverse :
dd if=fichier of=/dev/hda bs=512 count=1

Note : ATTENTION ! Cette dernière commande écrit de manière directe le contenu du fichier sur les secteurs du disque dur ! La moindre erreur peut donc provoquer l'écrasement TOTAL de votre disque dur par des données aléatoires, ou, dans le meilleur des cas, la perte de toutes vos partitions. Faîtes donc extrêmement attention à ce que vous tapez et relisez trois fois, non, quatre, la page de manuel de la commande dd avant d'exécuter cette commande...

L'installation de LILO est très simple une fois que l'on a écrit le fichier lilo.conf. En effet, il suffit tout simplement de taper la commande suivante :

lilo

Si lilo signale une erreur, il vaut mieux ne pas insister et corriger le fichier lilo.conf.

Lorsque la machine démarre, LILO affiche son invite de démarrage : LILO boot:

Il attend ici que vous indiquiez le nom du système que vous désirez démarrer. Attention, le clavier est ici en américain, et la disposition des touches est donc QWERTY. Vous devez ici taper le nom du système à charger et valider : LILO boot:linux

Si vous ne tapez rien, et que vous avez donné un délai d'attente dans le fichier de configuration de LILO, la première configuration sera lancée automatiquement après ce délai.

Il est possible de spécifier des paramètres de démarrage à la suite du nom du système utilisé. Ces paramètres servent principalement à renseigner le noyau sur la configuration matérielle (en particulier les ports d'entrée/sortie et les lignes d'interruption des périphériques non Plug and Play), pour le cas où il ne parviendrait pas à la déterminer automatiquement. L'un des paramètres les plus intéressants est sans doute mem, qui permet d'indiquer au noyau la taille de la mémoire vive dont dispose l'ordinateur. Ce paramètre peut être nécessaire si vous disposez de plus de 64 Mo de mémoire, parce que les fonctions du BIOS ne permettent pas d'indiquer les tailles de mémoire plus grandes. Par exemple, si votre ordinateur dispose de 128 Mo de mémoire, vous devrez taper la ligne de paramètres suivante au démarrage : LILO boot:linux mem=128M

Bien entendu, il est possible d'enregistrer ces paramètres dans le fichier de configuration de LILO. Pour cela, il suffit d'indiquer le paramètre de démarrage du noyau dans une ligne append de la section de configuration de Linux :

append="paramètre"

Ainsi, la section de configuration de Linux du fichier lilo.conf exemple donné ci-dessus pourrait être remplacée par celle-ci sur une machine disposant de 128 Mo de mémoire :

# Première configuration (Linux) :
image = /dev/hda2
root = /dev/hda3
label = linux
append="mem=128M"

Le niveau d'exécution dans lequel le système doit se placer lors de son démarrage peut également être précisé en paramètre du noyau lors du démarrage. Vous devrez donc utiliser une commande semblable à celle-ci : LILO boot:linux niveau pour démarrer Linux dans le niveau d'exécution niveau. Ainsi, pour passer en mode mono-utilisateur (c'est-à-dire le mode de maintenance), il suffit de taper la commande suivante à l'amorçage de LILO :

LILO boot:linux 1

Il est également possible d'utiliser le paramètre single, qui est synonyme du niveau d'exécution 1.