Why use Windows' Boot Manager rather than LILO or GRUB?
a) You have a Windows XP system already, and want to add Linux capability simply by adding a second hard drive.
b) You may be more comfortable with Windows' boot manager.
c) If you decide to remove Linux from your system one day, you can simply pull the second disk drive and you'll still have the Windows boot manager around, rather than being left with LILO or GRUB.
d) You can boot into a Linux installation that's located above 1024 cylinders without using a boot diskette.
The short version of what needs to be done:
a) Save the first 512 bytes of the Linux boot partition to a file
b) Copy that file to C:\
c) Add a line into Windows Boot manager that points to this file (C:\BOOT.LNX)
- You need two hard disk drives (although this technique should work with two partitions on a single drive.)
- The first drive (C:) should already have Windows XP Professional installed on it.
- The second hard disk (D:) should have sufficient free space on which to install Linux.
- Fedora Core 1 will be installed. (This procedure should work with most any Linux distribution, but these directions were developed with respect to Fedora Core)
- You need to have two 3.5 floppy diskettes ready:
- The first one will be overwritten completely to create a Linux boot diskette, so make sure nothing is needed on it.
- The second one should be DOS formatted and need not be empty since we will only need enough space to save a 512 byte file.
Step by Step Instructions:
1) Install Windows XP on your C: drive (a normal Windows installation).
2) Back up your data (i.e. I won't assume liability if you make any mistakes).
3) Install your second hard drive (if you haven't done so already). Make sure it's accessible by the system (it should be visible in "Start...My Computer...Hard Disk Drives" in Windows XP).
4) Place the first Fedora Core CD into your CD-ROM drive and boot your computer from the CD-ROM (change your BIOS settings if necessary).
5) Run through the Fedora installation process as per the installation instructions until you come to the screen that's titled: "Boot Loader Configuration" On this screen, check the "Configure advanced boot loader options" box and then click "Next".
6) On the next screen ("Advanced Boot Loader Configuration"), under the "Install Boot Loader Record on" section, make the sure the radio button next to "/dev/hdb1 First sector of boot partition" is selected.
Do not leave this on the default (/dev/had Master Boot Record (MBR))! You want to load the boot loader to the first sector of the boot partition, not to the Master Boot Record.
Note that on my Linux configuration, the proper path is /dev/hdb1--on your system, it may be different. Write down this path (hdb number) because you will need it later!
WARNING: It is critical that you DO NOT install the Linux boot loader into the Master Boot Record (MBR) as this will overwrite the Windows boot manager! Be very careful here!
7) Click "Next" and continue with the installation process until you come to the "Boot Disk Creation" screen.
8) Make sure the radio button next to "Yes, I would like to create a boot disk" is selected (it is, by default) and then click "Next".
9) Proceed with the boot disk creation and remove it when it is finished.
10) Continue with the installation process as instructed. Before re-booting at the end of the installation, remove the Fedora Core CD and insert the Linux boot floppy diskette you created in step 9. You will next boot Linux with this diskette.
11) The first time Linux loads, you will be prompted to perform a few additional post-installation tasks. Complete these so you can move on.
12) When you finally reach the Linux login screen, login as root.
13) Open up a terminal window ("System Tools"... "Terminal").
14) You will now need the path (hdb number) you wrote down. Assuming that the boot partition is at hdb1, type:
dd if=/dev/hdb1 of=boot.lnx bs=512 count=1
If hdb1 is NOT your boot partition, change it as appropriate. If you FORGOT what your hdb number was, from the terminal window, type: df, then determine which hdb# is associated with the /boot partition.
15) A file named "boot.lnx" should now have been created in root's home directory. To confirm this type:
ls -l boot.lnx
16) Insert a DOS formatted floppy diskette into the floppy drive and while still in the terminal window, type:
mcopy boot.lnx a:
This uses MTOOL's "mcopy" command to copy a file from a Linux partition to a DOS formatted diskette.
17) Remove the DOS diskette. Remove any CDs from the CD-ROM drive(s).
18) While still in the terminal window, type:
shutdown -r now
This will reboot your computer. With no CD in the CD drive or floppy in the floppy drive, your computer should now boot into Windows XP.
19) Log into Windows as an administrator or as a user with administrator privileges.
20) Insert the DOS floppy diskette that contains the boot.lnx file into the floppy drive and then copy it to C:\ using the DOS copy command or Windows Explorer.
21) Right click on "My Computer" and select "Properties" (or select "Start"... "Control Panel"... "Performance and Maintenance" and "System").
22) Click on the "Advanced" tab, and then click "Settings" under "Startup and Recovery".
23) Under "System Startup" click "Edit". This opens the file in Notepad ready for editing.
24) Add a line to the end of the file that contains the following:
c:\boot.lnx="Fedora Core 1"
You can put whatever you like between the quotations. This indicates the text that will appear in Windows' Boot Manager.
25) In Notepad, click File on the Menu bar, and then click Save.
Depending on how many copies of Windows you have installed, your BOOT.INI may now look something like this:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
c:\boot.lnx="Fedora Core 1"
If you wish to change the order of the selections in the boot manager screen (e.g. to make Linux appear before Windows), just change the order of the relevant lines in BOOT.INI. Likewise, if you wish Linux to be the default selection, change the text after the "default=" line to:
You can also change the default timeout (in seconds) if you need more (or less) time to make an OS choice during the boot process.
26) Reboot your computer. The Windows boot manager should now provide the added option to boot into Linux. Select "Fedora Core 1" and notice that you will be taken to the Linux boot manager (GRUB) screen first. Finally, within GRUB, select "Fedora Core (2.4.x.x)" and Linux will start its regular boot process.
If you'd prefer not to have the DOS option show (it will simply dump you back into the Windows boot manager), edit your grub.conf file in the /boot/grub directory of your Linux hard drive. Simply edit the file (using gedit or your text editor of choice) and "comment out" (using # symbols) or delete the lines associated with the DOS option, and save the file.
You may also want to decrease the default timeout (in seconds) before Linux will load from GRUB.
27) At this point you're finished! While you will no longer need either of the floppy diskettes, you may wish to save the Linux boot disk in case of an emergency.