免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2132 | 回复: 6
打印 上一主题 下一主题

{求助}grub如何引导第二块硬盘上的windows xp ? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-22 15:33 |只看该作者 |倒序浏览
有两块硬盘
magic linux装在第一块硬盘上
WINDOWS XP系统在第二块硬盘的第一分区上,这样写grub的menu.lst 却无法引导
title Microsoft Windows XP
rootnoverify (hd1,0)
chainloader +1
显示器一直显示出“
title Microsoft Windows XP
rootnoverify (hd1,0)
chainloader +1”
并保持不变,无错误提示
保持不变,无法正常进入WINDOWS XP系统
不知该如何修改menu.lst才能正常引导widows系统
烦劳高手指点!感激不尽!

论坛徽章:
0
2 [报告]
发表于 2006-02-22 21:54 |只看该作者
沉了,我顶!!!!!!!!!!

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
3 [报告]
发表于 2006-02-22 22:21 |只看该作者
好象要有个 map 什么的.

你找一下以前的帖子.

论坛徽章:
0
4 [报告]
发表于 2006-02-22 22:22 |只看该作者
第二块硬盘的第一分区上...

primary slave

看清楚硬盤連了哪根線

[ 本帖最后由 lunchan 于 2006-2-22 22:40 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2006-02-23 14:00 |只看该作者
双硬盘双系统引导问题基本解决(GRUB FOR DOS的功劳)

   前两天一好朋友送我一块10G的硬盘(后面叫它小大硬盘),我本计划用他来做备份盘,由于我以前80G的硬盘(后面叫它为大硬盘)分区表未能修复(强强制主分区的过错),正好使用这块小硬盘来玩lfs,于是在小硬盘上装了MAGIC LINUX 2.0正式版作为主系统,用于安装LFS,却未料到系统引导居然出现问题。

   装好硬盘后,BIOS中显示10G小硬盘为master主盘,80G硬盘为从盘,GRUB安装进小硬盘的MBR,在BIOS中设置主盘优先引导后正常进入linux系统,为了让GRUB也能引导大硬盘上的WINDOWS XP系统,我修改menu.lst的内容为:
# Note that you do not have to rerun grub after making changes to this file.
default=0
timeout=6
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title MagicLinux
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.15.3  ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Graphics Mode)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.15.3 init 5 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Console Mode)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.15.3 init 3 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Single Mode)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.15.3 init 1 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img

# --> Microsoft Windows XP <--
title Microsoft Windows XP
      rootnoverify (hd1,0)
      chainloader +1

结果是显示器一直显示出“
title Microsoft Windows XP
rootnoverify (hd1,0)
chainloader +1”
并保持不变,无错误提示
保持不变,无法正常进入WINDOWS XP系统,这样写应当是正确的啊............

不能从小硬盘引导大硬盘让我很郁闷,但总不能每次都修改CMOS进不同系统吧~~~~~~~~~我决定让尝试让大硬盘来引导小硬盘上的系统,使用GRUB FOR DOS 网上留传的GRUB FOR DOS功能简单,设置也怪麻烦,但现在的许多DOS工具箱都使用GRUB FOR DOS来进行对不同功能工具的引导,同时还多来不少系统维护的实用工具,所以我直接到WWW.51CT.CN下载了51lite DOS 工具箱,安装后windows系统c盘多了几个文件,其中有grldr,文件夹xc_dos等,boot.ini,boot.ini的内容为
[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /detecthal
C:\grldr="51lite DOS tools"
打开目录xc_dos里的文件xc_menu.lst(xunchi很牛,grub被修改得满彻底www.xunchi.com)进行修改,修改后内容如下:
#########
password
timeout 5
###########
default 0
fallback 1
fontfile (hd0,0)/xc_dos/fonts
###########
splashimage (hd0,0)/xc_dos/bj2008.xpm.gz
###########
************************************************************************************
title MagicLinux
        root (hd1,0)
        kernel /boot/vmlinuz-2.6.15.3  ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Graphics Mode)
        root (hd1,0)
        kernel /boot/vmlinuz-2.6.15.3 init 5 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Console Mode)
        root (hd1,0)
        kernel /boot/vmlinuz-2.6.15.3 init 3 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
title MagicLinux (Single Mode)
        root (hd1,0)
        kernel /boot/vmlinuz-2.6.15.3 init 1 ro root=/dev/hda1 vga=791 splash=silent
        initrd /boot/initrd-2.6.15.3.img
**************************************************************************************
title 运行     Max DOS 工具盘 5.5
##
root    (hd0,0)
kernel (hd0,0)/xc_dos/memdisk.gz c=60 h=4 s=36 floppy
###########
###########
initrd (hd0,0)/xc_dos/Max_dos.IMG c=60 h=4 s=36 floppy
#####
password
###
title 运行     矮人 GHOST 8.2 向导工具(矮人版,简单易用)
password
####root    (hd0,0)
kernel (hd0,0)/xc_dos/memdisk.gz
###########
initrd (hd0,0)/xc_dos/ar_ghost.img
####
title 运行     GHOST 8.2 高级功能版(DOS之家版,功能强大)
password
####root    (hd0,0)
kernel (hd0,0)/xc_dos/memdisk.gz
###########
initrd (hd0,0)/xc_dos/g82.IMA
#####
title 调用     从光盘启动系统
scdrom --bootcd
###########
title 返回     WINDOWS启动菜单
rootnoverify (hd0,0)
makeactive
chainloader  +1
########################

自此实现了双系统的正常引导,只是有一点很奇怪,grub均把自己所在硬盘认成是hd0!!GRUB FOR DOS可以引导第二块硬盘上的操作系统,而magic linux装的GRUB却无法引导第二块硬盘上的WINDOWS XP系统,两者的版本相同,同为GRUB  version 0.95

疑惑中,不知到底是不是我写menu.lst造成的错误,烦劳知情者指点!!谢

论坛徽章:
0
6 [报告]
发表于 2006-02-24 07:09 |只看该作者
现在问题已经完全解决了

现在修改menu.lst内容如下,引导问题解决
# --> Microsoft Windows XP <--
title Microsoft Windows XP
root (hd1,0)
savedefault
makeactive
map (hd0) (hd1)
map (hd1) (hd0)
chainloader +1

查到资料,修改原因如下:
If you have installed DOS (or 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. The workaround used in GRUB is the command map (see map), like this:

grub> map (hd0) (hd1)
grub> map (hd1) (hd0)

就是hd0的分区变成了hd1的,而hd1的分区变成了hd0的,用map命令可以虚拟掉换两硬盘的id.

论坛徽章:
0
7 [报告]
发表于 2006-02-24 10:26 |只看该作者
你找找以前的文章,里面好象有,或者你到下面网址中找,
http://linux.chinaitlab.com/List_93.html
里面就!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP