J'ai deux disques IDE, et un disque SCSI. Le disque SCSI ne peut pas être vu par le BIOS. Lilo utilise des appels BIOS, et peut uniquement voir ce que le BIOS voit. Mon stupide AMI BIOS ne peut booter que sur "A:" ou "C:", or ma partition de root se trouve sur le disque SCSI.
La solution consiste en fait à stocker le noyau, la carte, et la chaîne d'amorçage sur une partition Linux sur le premier disque IDE. Remarquez qu'il n'est pas nécessaire de garder le noyau sur la partition root.
La deuxième partition de mon premier disque IDE (/dev/hda2
, la partition Linux utilisée pour booter sur le système) est montée sur /u2
. Et voici le /etc/lilo.conf
que j'utilise.
# On installe Lilo sur le MBR du premier disque IDE
#
boot = /dev/hda
# /sbin/lilo (l'installateur) copie le boot record de Lilo
# depuis le fichier suivant vers le MBR
install = /u2/etc/lilo/boot.b
#
# J'ai écrit un menu détaillé. Lilo le trouvera là
message = /u2/etc/lilo/message
# L'installateur construira le fichier suivant. Il dit à
# l'amorceur ou sont les blocs ou se trouvent les noyaux
map = /u2/etc/lilo/map
compact
prompt
# on attende 10 seconds, puis on boot sur le noyau 1.2.1 par défaut.
timeout = 100
# Le noyau est stocké ou le BIOS peut le trouver en faisant ça :
# cp -p /usr/src/linux/arch/i386/boot/zImage /u2/z1.2.1
image = /u2/z1.2.1
label = 1.2.1
# Lilo dit au noyau de monter la première partition SCSI en tant que
# root. Le BIOS n'a pas à savoir qu'elle existe.
root = /dev/sda1
# Cette partition sera vérifiée puis remontée par /etc/rc.d/rc.S
read-only
# J'ai un noyau d'une vielle Slackware qui traîne dans un coin au cas
# ou j'ai un noyau qui ne marche pas. J'en ai déjà eu besoin une fois
image = /u2/z1.0.9
label = 1.0.9
root = /dev/sda1
read-only
# Ma partition DR-DOS 6
other = /dev/hda1
loader=/u2/etc/lilo/chain.b
label = dos
alias = m