Attention! Lilo est un fichier sensible!
En cas d'erreur de manipulation, vous risquez de rendre votre configuration inutilisable. Pensez à avoir toujours une disquette de démarage sous la main au cas où un problème surviendrai. Vous pouvez également faire une copie de votre secteur de démarrage sur une disquette avec la commande:
dd if=/dev/hda of=/fd/MBR/ bs=512 count=1
Au travers des quelques lignes qui suivent, nous décrivons brièvement l'utilité et le fonctionnement de lilo. Nous espérons néanmoins qu'elles permettront au lecteur de découvrir les bases de cet outil.
Lilo (LInux LOader) est un petit programme destiné à permettre un système d'amorce multiple. Grâce à lui, on peut choisir le système que l'on souhaite utiliser: Linux, FreeBSD, Windows, OS/2,..., lors du lancement de votre machine. Pour cela, lilo est placé dans le secteur de boot de votre disque dur.
Pour modifier la configuration de lilo, il suffit de modifier son fichier de configuration, lequel est généralement /etc/lilo.conf. Normalement, on doit se connecter en root pour effectuer cette opération.
Nous utiliserons l'exemple suivant pour illustrer notre propos :
boot=/dev/hda |
# disque ou partition où est installé lilo |
map=/boot/map |
# transmet à lilo les blocs d'adresse des noyaux |
install=/boot/boot.b |
# copie le boot record de lilo depuis le fichier suivant vers le MBR |
prompt |
# mode interactif |
timeout=50 |
# Délai d'attente en dixième de secondes |
default=oldlinux |
# boot par défaut |
vga=normal |
# mode graphiquede démarrage |
image=/boot/vmlinuz-2.2.5-22 |
# le noyau qui sera chargé |
label=linux |
# le nom à transmettre à lilo |
root=/dev/hda1 |
# Emplacement de la partition racine |
initrd=/boot/initrd-2.2.5-22.img |
|
read-only |
|
image=/boot/vmlinuz-2.2.5-15 |
|
label=oldlinux |
|
root=/dev/hda1 |
|
initrd=/boot/initrd-2.2.5-15.img |
|
read-only |
|
other=/dev/hda2 |
# Un autre système d'exploitation (windows98) |
label=dos |
|
table=/dev/hda |
# le disque où se trouve la table de partition courante |
other=/dev/hda3 |
|
label=bsd |
|
Dans cette exemple, le premier disque dur dispose de trois systèmes d'exploitation: une version de Linux (sur /dev/hda1), Windows (/dev/hda2) et FreeBSD (/dev/hda3).
Les systèmes de type Linux sont référencés par les entrées commençant par image=; les autres, par other=.
Toutes les options ne sont pas reprises. Pour plus d'informations, consulter le HOWTO de lilo.
Les options suivantes en gras sont des paramètres génériques, indépendes du type d'O.S..
boot: : disque sur lequel est placé le fichier lilo (plus exactement, le device qui contient le secteur de boot);
label : texte à taper au lancement pour sélectionner l'O.S.;
install : spécifie le fichier utilisé comme nouveau secteur de démarrage. Si install est omis, /boot/boot.b est utilisé par défaut;
map : spécifie l'emplacement du fichier map. Si cette option est omise, un fichier /boot/map (crée par l'exécution de /sbin/lilo) est utilisé;
timeout : permet de préciser la durée (en dixièmes de secondes) pour l'entrée au clavier. Si aucune touche n'est enfoncée pendant le temps prescrit, la première image est automatiquement chargée. Par défaut, timeout est infini;
default : spécifie quel entrée sera chargée par défaut, au bout du temps défini par timeout; si cette ligne est absente, l'entrée par défaut est la première du fichier lilo.conf.
Entrée image :
La première chose à écrire après image= est le nom du noyau à utiliser, avec son chemin. Ainsi, le kernel x.x.x-xx correspond au fichier /boot/vmlinuz-x.x.x-xx situé sur la première partition du premier disque dur. L'option root indique le répertoire racine.
Entrée other
Après other= doit se trouver la partition abritant l'O.S. (différent de Linux). L'option table permet d'indiquer le disque.
Remarques :
Vous aurez sans doute remarqué la présence de deux noyaux Linux sur la première partition. Il est souvent conseillé de laisser l' ancien noyau lors de l'installation d'un plus récent, surtout s'il s'agit d'une version de développement. Ainsi, en cas de problèmes, on pourra toujours se rabattre sur l' ancien noyau.
Pourquoi indiquer read-only ? Lorsque Linux est amorcé, ce dernier vérifie la cohérence des partitions Linux. Pour réaliser cette opération, il est indispensable que la partition soit en lecture seule. En effet, vérifier un disque en cours d'utilisation pourrait tout détruire. Cette vérification n'a toutefois pas lieu à chaque lancement, si vous éteignez correctement votre ordinateur.
Pour que la configuration soit prise en compte, il suffit d'exécuter /sbin/lilo/. Si des erreurs de syntaxe sont rencontrées, un message d'erreur vous en avertira.
Il est possible de configurer et de modifier le fichier de configuration par l'intermédiaire d'une interface graphique. Linux possède une section dans l'application d'administration ' gnome-linuxconf ' : grâce à linuxconf, on peut configurer Lilo pour pouvoir booter sur différents noyaux ou sous différents systèmes d'exploitation.
Lorsque vous voyez le prompt Lilo, vous pouvez taper sur la touche
Si vous avez installé lilo sur votre disque dur et que la machine plante, il est possible de restaurer les paramètres de boot du DOS en relançant l'ordinateur avec une disquette MS-DOS et en tapant fdisk /mbr. Lilo sera enlevé par la même occasion. Il suffira de relancer lilo en ayant rebooté sous Linux avec une disquette de démarrage.
La désinstallation n'est cependant généralement pas nécessaire. Relancer votre ordinateur avec une disquette de démarrage Linux puis exécuter /sbin/lilo en ayant éventuellement rétabli l'ancienne configuration.
Si vous avez fait une copie du MBR (Master Boot Record) comme indiqué précédemment, vous pouvez également le restaurez via la commande:
$ dd if=/fd/MBR of=/dev/hda bs=446 count=1
Si vous avez installé Linux, et que vous désirez (ré)installer Windows, vous risquez de découvrir avec effroi que votre Lilo a disparu. Le programme d'installation de Windows réécrit en effet le secteur où est normalement abrité Lilo.
Une solution est de relancer l'ordinateur avec une disquette de démarrage Linux, laquelle peut être créée lors de l'installation de Linux. A présent, il ne reste plus qu'à entrer la commande : $ /sbin/lilo en tant qu'utilisateur root. Magie! Lilo est réinstallé. Vous devriez à présent pouvoir redémarrer l'ordinateur et retrouver le prompt lilo conventionnel.