Grub entries for Windows on 2nd hdd

David Morgan dmorgan1 at dslextreme.com
Wed Aug 9 00:19:05 UTC 2006


I've done this. In addition to special config for grub, there's a 
special way to install Windows. I did both and it worked. I wanted my 
Windows hdd to become primary slave (hdb).

Windows installation: I had to do Windows installation on the target 
machine with the Windows hdd connected as sole, primary master hard 
disk. That is, I temporarily removed any other hard disks. And 
temporarily jumpered the target disk for Windows as master. After 
successful Windows installation, I reinstalled other hard disks back as 
usual and rejumpered this one as slave. Installed it too, as primary slave.

Grub config: key is the "map" command. See 
http://www.gnu.org/software/grub/manual/html_node/map.html#map
Also, http://www.linux-mag.com/2003-11/guru_01.html
http://www.linux-mag.com/2003-12/guru_01.html
very good article covering grub.


My grub.conf with a lot of comments to myself is here:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,1)
#          kernel /boot/vmlinuz-version ro root=/dev/hda2
#          initrd /boot/initrd-version.img
#boot=/dev/hda
default=0
timeout=15
splashimage=(hd0,1)/boot/grub/splash.xpm.gz
title Fedora Core (2.6.5-1.358)
    root (hd0,1)
    kernel /boot/vmlinuz-2.6.5-1.358 ro root=LABEL=/ rhgb quiet
    initrd /boot/initrd-2.6.5-1.358.img
title WinXP on hdb1
# Put a second hd in Monarch to install XP on (1/05). Installing XP with
# both disks present, it insists on placing boot files on first even though
# you're installing XP (otherwise) on the second. So I disconnected
# first drive (primary master) and re-jumpered second to become first.
# Installed XP that way, it put everything in the one-and-only partition.
# Then, rejumpered drive to revert to primary slave and reconnected both
# drives. How then to get Windows on the primary slave to boot? Two ways.
# First, in BIOS tell it to boot from the second. Windows comes up happy,
# regarding partition on second as its "C:". Or, let BIOS boot from first.
# There, put the necessary GRUB code in mbr. Specifically, use GRUB's
# "map" command trickery. "If you have installed [Windows] on a non-first
# hard disk, you have to use the disk swapping technique, because that
# OS cannot boot from any disks but the first one. [Using map as below]
# "This performs a virtual swap between your first and second hard drive."
    map (hd0) (hd1)
    map (hd1) (hd0)
    unhide (hd0,3)
    rootnoverify (hd1,0)
    chainloader +





More information about the Redhat-install-list mailing list