Votre système LBS flambant neuf est pratiquement fini. Une des dernières choses à faire est de vous assurer que le système peut démarrer proprement. Les instructions ci-dessous s'appliquent seulement aux ordinateurs de l'architecture IA-32, c'est-à-dire les PC standards. Des informations sur le « chargement au démarrage » pour les autres architectures devraient être disponibles aux emplacements habituels des ressources pour ces architectures.
Le chargement au démarrage est un domaine complexe. Tout d'abord, quelques mots de mise en garde sont nécessaires. Vous devez vraiment connaître le chargeur actuel et tout autre système d'exploitation présent sur le disque dur amorçable. Assurez-vous d'avoir une disquette de démarrage de façon à pouvoir « sauver » l'ordinateur si, par malheur, celui-ci devenait inutilisable (non amorçable).
Plus tôt, nous avons compilé et installé le chargeur de démarrage Grub pour cette étape. La procédure implique l'écriture de quelques fichiers spéciaux de Grub en des endroits spécifiques sur le disque dur. Nous recommandons fortement la création d'une disquette de démarrage Grub comme sauvegarde. Insérez une disquette de démarrage vierge et lancez les commandes suivantes :
dd if=/boot/grub/stage1 of=/dev/fd0 bs=512 count=1 dd if=/boot/grub/stage2 of=/dev/fd0 bs=512 seek=1
Enlevez la disquette et rangez-la dans un endroit sûr. Maintenant, lancez le shell grub :
grub
Grub utilise sa propre structure de nommage des disques et
partitions, de la forme (hdn,m), où n est le numéro du disque dur et
m le numéro de la partition,
tout deux commençant à zéro. Par exemple, la partition hda1
est (hd0,0) pour GRUB alors que hdb3
est (hd1,2). Contrairement à Linux, Grub ne
considère pas les lecteurs de CDRoms comme des disques durs. Par
exemple, si un CD se trouve sur hdb
et
un second disque dur sur hdc
, ce
dernier disque sera malgré tout (hd1).
En utilisant les informations ci-dessus, déterminez la désignation
appropriée pour votre partition root (ou votre partition de démarrage
si celle que vous utilisez est séparée). Pour l'exemple suivant, il
est supposé que votre partition root (ou votre partition séparée) est
hda4
.
Indiquez à Grub où chercher ses fichiers stage{1,2}
. La touche tabulation est utilisable
partout pour que Grub vous affiche les alternatives :
root (hd0,3)
La commande suivante écrasera votre chargeur de démarrage actuel.
Ne lancez pas cette commande si ce n'est pas désiré, par exemple,
lors de l'utilisation d'un autre gestionnaire de démarrage pour
gérer votre MBR (Master Boot Record). Dans ce cas, il serait
probablement plus sensé d'installer Grub dans le
« secteur de boot » de la
partition LFS, auquel cas la prochaine commande deviendrait :
setup (hd0,3)
.
Indiquez à Grub de s'installer dans le MBR de hda
:
setup (hd0)
Si tout va bien, Grub indiquera avoir trouvé ses fichiers dans
/boot/grub
. C'est tout ce qu'il y a à
faire. Quittez le shell grub :
quit
Créez un fichier « liste de menus » définissant le menu de démarrage de Grub :
cat > /boot/grub/menu.lst << "EOF"
# Début /boot/grub/menu.lst
# Par défaut démarre la première entrée du menu.
default 0
# Attend 30 secondes avant de démarrer l'entrée par défaut
timeout 30
# Utilise de jolies couleurs.
color green/black light-green/black
# La première entrée est pour LFS.
title LFS 6.3
root (hd0,3)
kernel /boot/lfskernel-2.6.22.5 root=/dev/hda4
EOF
Ajoutez une entrée pour votre distribution hôte si vous le souhaitez. Cela pourrait ressembler à ceci :
cat >> /boot/grub/menu.lst << "EOF"
title Red Hat
root (hd0,2)
kernel /boot/kernel-2.6.5 root=/dev/hda3
initrd /boot/initrd-2.6.5
EOF
Dans le cas d'une machine avec plusieurs systèmes d'exploitation, l'entrée suivante devrait le permettre :
cat >> /boot/grub/menu.lst << "EOF"
title Windows
rootnoverify (hd0,0)
chainloader +1
EOF
Si info grub ne fournit pas toutes les données nécessaires, plus d'informations concernant Grub sont disponibles sur le site web, situé sur http://www.gnu.org/software/grub/.
Le FHS stipule que le fichier menu.lst
de GRUB doit être un lien symbolique vers /etc/grub/menu.lst
. Pour satisfaire ce pré-requis,
lancez la commande suivante :
mkdir -v /etc/grub ln -sv /boot/grub/menu.lst /etc/grub