六、通过GRUB引导Windows操作系统;

1、通过编辑 menu.lst 来引导Windows 系统;

如果您的Windows所处于的分区在(hd0,0),可以在menu.lst 加如下的一段就能引导起来了;

title WinXp
rootnoverify (hd0,0)
chainloader +1

如果您的机器有两块硬盘,而Windows 位于第二个硬盘的第一个分区,也就是(hd1,0)

您可以用grub的map来指令来操作把两块硬盘的序列对调,这样就不用在BIOS中设置了;在menu.lst中加如下的内容,比如下面的;

title WinXp
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd0,0)
chainloader +1
makeactive

如果Windows的分区不位于硬盘的第一个分区怎么办呢?比如在(hd0,2);

这个也好办吧,把rootnoverify 这行的(hd0,0)改为 (hd0,2)

title WinXp
rootnoverify (hd0,2)
chainloader +1
makeactive

如果Windows的在第二个硬盘的某个分区,比如说是位于(hd1,2),则要用到map指令;

title WinXp
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,2)
chainloader +1
makeactive

如果有多个Windows 系统,怎么才能引导出来呢?应该用hide 和unhide指令操作;比如我们安装了两个Windows ,一个是位于(hd0,0)的windows 98 ,另一个是安装的是位于(hd0,1)的WindowsXP;这时我们就要用到hide指令了;

title Win98
unhide (hd0,0)
hide (hd0,1)
rootnoverify (hd0,0)
chainloader +1
makeactive

title WinXP
unhide (hd0,1)
hide (hd0,0)
rootnoverify (hd0,1)
chainloader +1
makeactive

2、通过GRUB指令来引导Windows ;

其实我们会写menu.lst了,在menu.lst中的除了title外,都是一条条指令;如果我们启动Windows ,只是输入指令就行了;

比如 Windows的分区在 (hd0,0),我们在开机后,按ctrl+c ,进入GRUB的命令模式;就可以用下面的

grub> rootnoverify (hd0,0)
grub> chainloader +1
grub> boot

其它同理… …