8.8. Creating Boot CDs

Problems may arise when attempting to boot a system with the LILO boot manager configured with YaST. The creation of a system boot disk fails with more recent SUSE LINUX versions because the space available on a floppy disk is no longer sufficient for the start-up files. Instead, create a boot CD. This solution is only a work-around. It should normally be possible to configure LILO properly. Refer to the documentation about this subject in /usr/share/doc/packages/lilo/README, or read the man pages man lilo.conf and man lilo.

It is possible to create a bootable CD-ROM containing the Linux start-up files if your system has an installed CD writer. It is easiest to create a bootable CD with the ISOLINUX boot manager. The SUSE installation CDs are also made bootable with isolinux.

  1. Boot the installed system first using the following alternate procedure:

    • Boot from the installation CD or DVD as for installation.

    • Choose the preselected option Installation during the boot sequence.

    • Choose the language and keyboard map next.

    • In the following menu, choose Boot installed system.

    • The root partition is automatically detected and the system is booted from it.

  2. Install syslinux with YaST.

  3. Open a root shell. The following commands create a temporary directory and copy the files required for the booting of the Linux system (the isolinux boot loader as well as the kernel and the initrd) into it:

    mkdir /tmp/CDroot
    cp /usr/share/syslinux/isolinux.bin /tmp/CDroot/
    cp /boot/vmlinuz /tmp/CDroot/linux
    cp /boot/initrd /tmp/CDroot
    
  4. Create the boot loader configuration file /tmp/CDroot/isolinux.cfg with your preferred editor. Enter the following content:

    DEFAULT linux
    LABEL linux
      KERNEL linux
      APPEND initrd=initrd root=/dev/hdXY [boot parameter]
    

    Enter your root partition for the parameter root=/dev/hdXY. It is listed in the file /etc/fstab. Enter additional options for the setting [boot parameter], which should be used during booting. The configuration files could look like this:

    DEFAULT linux
    LABEL linux
      KERNEL linux
      APPEND initrd=initrd root=/dev/hda7 hdd=ide-scsi
    
  5. The following command (entered at a command prompt) then creates an ISO-9660 file system for the CD.

    mkisofs -o /tmp/bootcd.iso -b isolinux.bin -c boot.cat 
      -no-emul-boot -boot-load-size 4 
      -boot-info-table /tmp/CDroot
    

    The complete command must be entered as one line.

  6. The file /tmp/bootcd.iso can be written to CD after that with graphical CD writing applications, like K3b, or at a command prompt with cdrecord -v speed=2 dev=0,0,0 /tmp/bootcd.iso -eject. Change the parameter dev=0,0,0 according to the SCSI ID of the writer. Determine it with the command cdrecord -scanbus. Also refer to the man page cdrecord.

  7. Test the boot CD. Reboot the computer to verify whether the Linux system starts correctly from the CD.