SDB:Construire un CD d'amorçage du système

Un article de openSUSE.


Version: 7.2 -

Situation

Vous avez des problèmes pour amorcer votre système installé grâce au gestionnaire d'amorçage GRUB ou LILO que vous avez établi à l'aide de YaST2.

Marche à suivre

Dans le cas où un graveur est disponible dans votre ordinateur, il est possible de construire un CD amorçable sur lequel vous gravez les données de démarrage de Linux.

Notez qu'il s'agit pour cette solution de contourner le problème. Normalement il devrait être possible de configurer le gestionnaire d'amorçage GRUB ou LILO correctement. Pour cela, jetez un ½il aux documentations respectives des gestionnaires d'amorçage :

Vous trouverez des remarques concernant GRUB par exemple dans l'article de la base de données d'assistance SDB:Le gestionnaire d'amorçage GRUB ) .

Vous trouverez la documentation concernant LILO par exemple dans /usr/share/doc/packages/lilo/README et dans les pages de manuel de lilo.conf et lilo que vous appelez avec les commandes man lilo.conf et man lilo.

CD d'amorçage avec ISOLINUX

Pour construire un CD amorçable, le plus facile est d'utiliser le gestionnaire d'amorçage Isolinux. Les CDs d'installation de SUSE sont d'ailleurs aussi rendus amorçables en utilisant Isolinux.

  • Amorcez tout d'abord votre système installé de la manière suivante (à partir de SuSE Linux 7.2) :
    • Amorcez depuis le CD ou le DVD d'installation comme lors de l'installation.
    • Choisissez l'option «Installation» lors de l'amorçage.
    • Choisir ensuite la langue.
    • Dans le menu suivant, choisissez le point «Amorcer un système installé».
    • La partition racine est reconnue automatiquement et le système est amorcé depuis celle-ci.
  • Installez le paquetage syslinux du groupe Système/Amorçage du système à l'aide de YaST2.
  • Ouvrez un interpréteur de commandes en tant qu'utilisateur root. À l'aide des commandes suivantes, un répertoire temporaire est construit pour le CD d'amorçage et les données importantes pour l'amorçage du système Linux (le gestionnaire d'amorçage Isolinux ainsi que le noyau et le disque initrd) y sont copiées.
mkdir /tmp/CDroot
cp /usr/share/syslinux/isolinux.bin /tmp/CDroot/
cp /boot/vmlinuz /tmp/CDroot/linux
cp /boot/initrd /tmp/CDroot
  • Avec votre éditeur préféré construisez maintenant le fichier de configuration du gestionnaire d'amorçage /tmp/CDroot/isolinux.cfg. Si vous voulez par exemple utiliser pico, la commande correspondante est
pico -w /tmp/CDroot/isolinux.cfg
Enregistrez le contenu suivant :
DEFAULT linux
LABEL linux
  KERNEL linux
  APPEND initrd=initrd root=/dev/hdXY  [paramètre d'amorçage]
Déclarez votre partition racine dans le paramètre root=/dev/hdXY. Si vous n'êtes pas sûr de l'identifiant de partition que celle-ci a, regardez simplement dans le fichier /etc/fstab. Dans la valeur [paramètre d'amorçage] vous pouvez fournir des options supplémentaires qui doivent être utilisées lors de l'amorçage. Le fichier de configuration pourrait par exemple ressemble à ce qui suit :
DEFAULT linux
LABEL linux
  KERNEL linux
  APPEND initrd=initrd root=/dev/hda7 hdd=ide-scsi
  • Ensuite un système de données ISO9660 est créé pour le CD à partir des fichiers avec la commande suivante :
mkisofs -o /tmp/bootcd.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /tmp/CDroot
Notez que la commande entière doit être donnée sur une seule ligne.
  • Le fichier /tmp/bootcd.iso peut alors être gravé sur un CD soit avec des programmes graphiques de gravure comme koncd ou xcdroast, ou simplement avec la ligne de commande :
cdrecord -v -eject speed=2 dev=0,0,0 /tmp/bootcd.iso
Le paramètre dev=0,0,0 doit éventuellement être adapté à l'identificateur SCSI (vous trouvez celui-ci en appelant la commande cdrecord -scanbus, cf. aussi man cdrecord).
  • Testez le CD d'amorçage ! Redémarrez pour cela l'ordinateur et vérifiez que votre système Linux est correctement démarré depuis le CD.

Veuillez notez que l'assistance gratuite à l'installation ne peut pas vous aider plus avant pour la construction d'un CD de ce type.

Un grand merci va à notre ancien collègue Stefan Schmidt qui a apporté une précieuse contribution à cet article. Merci, Stefan !