Often, the safest way to make the transition from Windows to Linux is by installing a dual-boot system, one that runs both Windows and Linux. This allows you to get comfortable with Linux while still maintaining a firm footing in the Windows world. I’ve had such a system almost exclusively since I first started using Linux. Done right, it can be the best of both worlds.
A key element of such a system is the boot loader, a small program that intervenes during the boot process to allow you to select which operating system you’d like to use. PowerQuest, for example, provides a great third-party boot loader, Boot Magic, with it’s distribution of Partition Magic.
Personally, I’ve always been partial to native solutions. One native solution to dual-booting Windows and Linux lies within all current Linux distributions: lilo, the “LInux LOader.”
Lilo, in its current state, “plays well” with most Win versions, including Win9x and Win2k. WinNT presents some problems that we’ll address later in the series. If you’re using one of the fully-compatible Win OSs, lilo can be safely installed in the Master Boot Record (MBR) of your system. But you’ll need to give it a bit of information. As with the system services we covered last week, lilo is controlled by a configuration file – /etc/lilo.conf. We’ll break out my lilo.conf file over the next week. At the end of the week, you’ll have a working lilo.conf file on which to customize your own dual-boot Linux/Win system.
The first three lines of lilo.conf contain some vital information. The first line tells lilo on which device to look for the MBR. In this case, it’s /dev/hda, the first IDE hard drive. This is where lilo will install itself. Because it’s installed into the MBR, lilo will be the first code after the BIOS loaded into your machine when you boot.
In most current distributions, the “map” line can be left intact as written by the install script. This line specifies where lilo can find the map file written by Linux when lilo is installed.
The third line, “install,” is another that can, and probably should, be left intact according to the default configuration. install=/boot/boot.b tells Linux that the file containing the boot sector to use on the MBR is located at /boot/boot.b.
Tomorrow, we’ll look at some lines in lilo.conf that can be customized to suit your tastes and needs.