Icarus
11-18-2001, 12:38 PM
This was a tough one to get working because of the way the Promise drivers load the drive (especially when that has been the primary boot drive up to now).
First a description of the system setup with the drives. Both drives are physically setup as masters but one is on the BIOS IDE0 Master and the other is the Promise IDE0 Master. The system was originally setup to boot Windows from the Promise drive, so in the BIOS boot order it was setup to boot before the IDE0 Master.
I changed the boot order to boot off the IDE0 Master (this way no Linux files were loaded on the Windows drive and it will keep the original boot sector). Installed Red Hat 7.2 on the IDE0 drive setting the drives with this config
hda = IDE0 drive
hde = Promise drive
and installed the Grub loader on hda in the boot sector.
This should of worked normally and let you boot the Windows drive from Grub, but because of the nature of the Promise drivers it would hang on the boot using this command to launch the Windows drive
rootnoverify (hd1,0)
chainloader +1
Not very much and not very effective. But I was able to launch Windows by changing the boot order in the BIOS, it works but still not very convenient. So after many trial and errors I have edit the Grub record in /boot/grub/grub.conf to start Windows with this command (and it works flawlessly)
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
makeactive
chainloader +1
This virtually re-maps the two drives to work in reverse, I.E. it makes Grub think that hd1 (the Windows drive) is really hd0 (the first drive). The 'makeactive' is one of those commands that should of been installed originally, but some systems don't need it.
the source for some of this information can be found at Zen and the Art of Using GRUB (http://www.caldera.com/SxS/grubtg.htm) and other 'I have forgotten the address' sites on the subject.
First a description of the system setup with the drives. Both drives are physically setup as masters but one is on the BIOS IDE0 Master and the other is the Promise IDE0 Master. The system was originally setup to boot Windows from the Promise drive, so in the BIOS boot order it was setup to boot before the IDE0 Master.
I changed the boot order to boot off the IDE0 Master (this way no Linux files were loaded on the Windows drive and it will keep the original boot sector). Installed Red Hat 7.2 on the IDE0 drive setting the drives with this config
hda = IDE0 drive
hde = Promise drive
and installed the Grub loader on hda in the boot sector.
This should of worked normally and let you boot the Windows drive from Grub, but because of the nature of the Promise drivers it would hang on the boot using this command to launch the Windows drive
rootnoverify (hd1,0)
chainloader +1
Not very much and not very effective. But I was able to launch Windows by changing the boot order in the BIOS, it works but still not very convenient. So after many trial and errors I have edit the Grub record in /boot/grub/grub.conf to start Windows with this command (and it works flawlessly)
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
makeactive
chainloader +1
This virtually re-maps the two drives to work in reverse, I.E. it makes Grub think that hd1 (the Windows drive) is really hd0 (the first drive). The 'makeactive' is one of those commands that should of been installed originally, but some systems don't need it.
the source for some of this information can be found at Zen and the Art of Using GRUB (http://www.caldera.com/SxS/grubtg.htm) and other 'I have forgotten the address' sites on the subject.