Quote:
Originally Posted by steve02169
Personally I would consider adding a new hard rdive for Windows.
|
When I've just started with Linux - I've bought a new hd. Now I have the WinXP disk as a IDE-slave and the Linux HD as a IDE-master. The both of the systems have their own boot loaders in the MBR of their HDs. GrUB is used for choosing the OS to boot and for booting Linux (if chosen). WinXP's boot loader (should I call it NTLDR?) is used just for booting WinXP. It is called
chainloading when one boot loader tells the system to search for another boot loader just to start another OS.
When I start my machine the GrUB is loaded from the MBR of my master hd. From GrUB's menu I choose the system to boot (Linux or WinXP). If Windows is chosen then GrUB goes to first block of the second hd according to line in GrUB's configuration:
Code:
chainloader (hd1)+1
+1 stands for that first block where chained boot loader is located.
Problem is that WinXP won't boot from not-first hd - it's in its nature

.
So, we must apply the mapping to fool it.
Code:
map (hd0) (hd1) //tells that the first hd is the second hd
map (hd1) (hd0) //tells that the second hd is the first hd
Thus, your resulting WinXP section of the
menu.lst (or
grub.conf) will look like this:
Code:
Title WinXP //
map (hd0) (hd1) //tells that the first hd is the second hd
map (hd1) (hd0) //tells that the second hd is the first hd
chainloader (hd1)+1 //chain loading
I think it is the only way for Linux+Win dual-boot system with separate hard disks. And it works fine.
Now I'm using LiLo shipped with Slackware. But my system's structure is the same and it works as well as with GrUB.