If you’ve ever tried to set up a dual boot system, more than
likely you have also managed to mangle the master boot record (MBR) of your
main system drive at least one time. Once corrupted you typically have a couple
of options. One of the most obvious ways is to boot from a CD-ROM distribution
and reinstall the OS. It’s probably not the quickest fix but it usually does
work. You could accomplish basically the same thing with a bootable USB disk if
you happen to have one.
Grub Disk (SGB) is a handy alternative that works in a few seconds. You’ll
find versions you can burn to a CD-ROM, USB disk or floppy disk. Booting from
one of these media devices presents you with a menu of options that should help
you get your system configured properly. It’s also a tool capable of leaving
your system unable to boot if you set the options wrong.
The key to using it correctly is to understand how a disk
drive is organized and what you need to do to get it to boot properly. Wikipedia has a good
description of how individual disks are partitioned. It’s a good place to start
if you don’t have a basic understanding of things like the MBR, primary and
extended partitions and the different partition types.
Every PC goes through a process when you turn the power on
called the boot process. One artifact of the original PC design is something
called the Basic Input Output System or BIOS. This is typically kept in a Read
Only Memory (ROM) or Flash ROM that can’t be altered without running a special
program to change it. When the computer wakes up it starts trying to execute
instructions at a fixed location — the first address of the BIOS. After the
BIOS does its thing it hands over the process to the boot loader.
That’s where GRUB comes in. The name GRUB comes from a
project named the Grand Unified Boot loader. It’s the primary boot loader used
in all the mainstream Linux distributions. In most cases GRUB is loaded into
the MBR of a disk drive and is passed control from the BIOS. GRUB can also run
from a floppy disk or other removable media.
GRUB is unique in that it comes with a menu of options and
even a command prompt if you need to interact with it. The options menu is driven
by a structured text file that you can edit and change to meet your needs. GNU
GRUB is the name of the open source project with the goal of improving the
overall boot process to make it faster and more secure. Check out their web site and wiki for more information on GRUB itself.
If a computer won’t boot at all (blank screen) or gives some
type of error during the process, there’s a good chance it has something wrong
with the MBR. A corrupted MBR could happen in a number of different ways including
a hardware failure. If the disk has developed a bad block in the MBR portion of
the disk, you might just have to get a new system disk. Wikipedia has a good entry explaining all the
details of the MBR and what you should expect to find if you go looking.
There are essentially two ways of creating a dual boot
system. Both involve installing the different operating systems into their own
partition either on the same disk or on separate disks. The easiest way only
works if you have two hard disks available. In this case you simply put one OS
on the first drive and the second OS on the second drive. The installation
process is then free to use all the space available on that drive.
The problems tend to start when you do the multiple
installations. As a general rule the last OS installed typically loads its boot
code into the MBR while potentially ignoring a previously installed OS. This is
a common occurrence when installing Windows after Linux. SGD can easily fix
this problem with a few simple menu commands. Windows antivirus software can
also get in the way and remove your GRUB boot.
The SGD website has a number of different sections to help
you solve your boot problem. A good place to start is the SGD wiki. Here you’ll
find a wealth of information and troubleshooting tips on what to do when your
system won’t boot. There’s a section on Boot Problems and their
Solutions covering all the common scenarios and what to do to fix it. One
quick look at the site and you can tell the wiki, in its current state, is
definitely a work in progress.
The key to setting up a system for dual booting is in the
order that you install the different operating systems. If you need to run both
Windows and Linux from a single system disk, you should create one partition
with enough space to hold Windows, your application files and extra room to
store your files. Once you have configured Windows the way you want it you can
then install Linux into the unused portion of your hard drive.
When the Linux installation runs it will load GRUB into the
MBR instead of the Windows boot code. If you want to boot to Windows on a
second hard drive, you can use a GRUB feature (map) to swap the physical order
of the drives. To make the changes in the GRUB config file you would add:
map (hd0) (hd1) map (hd1) (hd0)
With SGD all you have to do to make this change is select
the EASY LIVE SWAP option from the main menu. SGD will also allow you to fix
the problem caused by some Windows antivirus programs using a few simple
commands. These can be found on the SGD wiki under Windows Erases Grub.
SGD includes a number of tools to do things like show you the existing
partitions on your hard drive.
Super Grub Disk is a handy tool to have around if you find
yourself installing multiple operating systems or even if you just want a way
to diagnose a boot problem. It gives you an alternative boot path to get around
a system that won’t boot from the main hard drive. Best of all, it’s free!