Dual-Boot vs. Alternate-Boot
(Rev 1.1 updated 9/2012)

© Brian Mork - Spring 2009
Increa Technology

Site Index  •  Wiki  • Blog


Executive Summary

I have used Dual-Boot systems for years.  I've now transitioned to using Alternate Boot system architecture because storage hardware is cheap, it provides better redundancy, and offers more modular upgrade paths.

The Dual-Boot Architecture

GRUB logo

LILO LogoI ran dual-boot Windows Linux systems since about 1994, using two different boot loaders.

The LILO boot loader writes a hard-coded MBR (Master Boot Record) pointing to physical locations on the hard disk(s) to continue booting.  It doesn't matter what operating system you're booting to because physical locations of the disk are coded in the MBR and not edited once the MBR is created.  You do need an operating sysetm to write the initial MBR from the lilo.cfg file, and there are both Windows and Linux programs to do so (primarly lilo under Linux).

The GRUB boot loader is a more feature oriented, and the MBR that is written actually contiues to a small-footprint command line interactive program.  It reads a menu.lst file from the local Linux disk and presents options to choose from.  It can auto default to a choice, or you can choose something else, or edit choices, or just manually type in a new choice real time.  Very flexible.

It bothered me that, on a dual-boot system (Windows on the first drive and Linux on the second), that I needed both drives alive and well to boot.  The MBR on the first drive needed to be there to read the GRUB menu.lst file and 2nd/3rd stage load files on the second drive.  Rather than providing some redundancy and backup, I was instead asking for failure twice as often because booting depended on two hard drives.

When I jostled things around and rewrote my GRUB menu.lst file to accomodate Linux on the first drive and Windows on the second, I had nothing but trouble.  Windows does not like to be isolated away from the first drive boot sectors. I still don't know why the "windows" boot choice doesn't work.

timeout 7
color black/cyan yellow/cyan
serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
default 0

title linux
kernel (hd0,0)/boot/vmlinuz BOOT_IMAGE=linux root=UUID=c91114f6-e482-4232-99ed-a452f176f676  splash=verbose vga=788
initrd (hd0,0)/boot/initrd.img

title linux-nonfb
kernel (hd0,0)/boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=c91114f6-e482-4232-99ed-a452f176f676  splash=verbose
initrd (hd0,0)/boot/initrd.img

title failsafe
kernel (hd0,0)/boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=c91114f6-e482-4232-99ed-a452f176f676 failsafe
initrd (hd0,0)/boot/initrd.img

title windows
root (hd1,0)
chainloader +1

title desktop586 2.6.24.4-1mnb
kernel (hd0,0)/boot/vmlinuz-2.6.24.4-desktop586-1mnb BOOT_IMAGE=desktop586_2.6.24.4-1mnb root=UUID=c91114f6-e482-4232-99ed-a452f176f676  splash=verbose vga=788
initrd (hd0,0)/boot/initrd-2.6.24.4-desktop586-1mnb.img

title desktop586 2.6.24.7-1mnb
kernel (hd0,0)/boot/vmlinuz-2.6.24.7-desktop586-1mnb BOOT_IMAGE=desktop586_2.6.24.7-1mnb root=UUID=c91114f6-e482-4232-99ed-a452f176f676  splash=verbose vga=788
initrd (hd0,0)/boot/initrd-2.6.24.7-desktop586-1mnb.img

The Alternate-Boot Architecture

What I wanted was two bootable drives that could each stand alone in case the other failed. Finally, I just created a stand alone two-partition Windows drive (C: and D:) as a solo drive in the computer.  Then I created a stand-alone 3-partition drive under Mandriva 2008 Linux (root, swap, home) as a solo drive in the computer.

Finally, I put them both in with Linux as IDE Primary and Windows as IDE Secondary.


Putting Back Dual Boot: Mandriva Linux & Windows 2000

Once inside of the Gentoo boot Linux, mount up the Mandriva root partition:

cd /mnt
mkdir mount-location
mount -t ext3fs /dev/hda2 /mnt/mount-location

In my Linux distribution there was an install script (named install.sh, of all things) left in place that runs GRUB, which automates three grub commands.  Here's a copy of the script file:


Next, drop into the GRUB directory previously created during the Mandriva install and run the script, which will cause GRUB to re-write over the Master Boot Record:

chroot /mnt/mount-location /bin/bash
cd /boot/grub
./install.sh


Bibliography / Additional Resources

 
None yet.


kompozer-logoValid HTML 4.01 Transitional


openoffice logokde-logoRevision 1.0 - This document was edited using Kompozer 0.7.10 (renamed Nvu editor) web page editor under the KDE desktop on a Mandriva 2008.1 Linux system.