|< Day Day Up >|
Recipe 12.18. Multibooting Linuxes with LILO
The first Linux installed is the "host" system. You need to preserve it to keep LILO working. Make sure that the root filesystem containing the /boot directory is on a primary partition, or LILO won't work.
Write down the location of the partition where the root filesystem of your next Linux is going to be installed. If you also know the exact name of the kernel, and the initrd image (if there is one), you're ahead of the game. While you're still in the host Linux, you can create a lilo.conf entry for Linux #2:
# Red Hat 9 image=/boot/vmlinuz-2.4.22-1 initrd=/boot/initrd-2.4.22-1.img label="Red Hat 9" root=/dev/hda6 read-only
Then write the changes to the MBR:
# /sbin/lilo -v
Now you can go ahead and install Linux #2, and because you already have a LILO boot menu entry for it, you can glide through however many reboots it takes to complete the installation.
When the installer gets to the bootloader installation, be sure to select "install to the first sector of the root partition," or however your installer words it. Do not overwrite the MBR.
If you don't know the exact kernel name and initrd image, you'll have to discover them from the host Linux. Go ahead and start the installation of Linux #2. When it comes to the first reboot, you'll end up back in the host Linux. Mount the new Linux #2 filesystem and read the /boot directory:
# mount /dev/hda6 /mnt/tmp # cd /mnt/tmp # ls boot System.map initrd-2.4.22-1.img System.map-2.4.22-1 vmlinuz vmlinuz-2.4.22-1
There's your kernel and initrd. Make your lilo.conf entry, re-run /sbin/lilo, and reboot. Now you can select your new Linux from the bootloader menu and finish the installation.
Sometimes a ramdisk is required for the system to boot properly. If this is the case, there will be an initrd image. Note that not all distributions require an initrd image. If it's in /boot, it's needed, and it requires an entry in lilo.conf.
12.18.4 See Also
|< Day Day Up >|