中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [求助]关于grub4dos启动多系统 上一主题 | 下一主题
guanhai
初级用户





积分 62
发帖 23
注册 2007-1-17
状态 离线
『楼 主』:  [求助]关于grub4dos启动多系统

我今天做了这么一个尝试
硬盘上分了3个主分区,分别安装windows 2000专业版,我把它们称为2k1、2k2 和 2k3
我准备用grub管理这3个2k的启动
想要的效果是
     进入2k1,2k2和2k3 自动隐藏
     进入2k2,2k1和2k3 自动隐藏
     进入2k3,2k1和2k2 自动隐藏

我把grldr放在第一个主分区的根目录下,并用bootlace 0x80使grldr通过mbr引导

启动机器后能正常显示grub菜单,我先进入第一个主分区上的2k1,进入后的确看不到第2个和第3个主分区;
然后重启机器通过grub菜单进入第二个主分区上的2k2,进入后,发现c盘符上的内容是第一个主分区的内容;

试到这里我知道自己没有找到真正能实现我的目标的办法,特此向各位朋友求教

谢谢


附menu.lst内容(该menu在三个主分区都是98的时候是有效的)

# Grub 0.95 中文版配置文件样例, by Gandalf(f22_storm@163.com)
#  2004 -  07 - 15 (midified 13:13 2004-11-13)
#
# 默认延迟时间(秒)
timeout 10
# 第一项为默认值
default 0
# 设置图形背景文件
splashimage (hd0,0)/boot/grub/xp2008.gz
# 设置中文支持的字体文件
fontfile (hd0,0)/boot/grub/fonts

# 从本地磁盘的第一个主分区启动
title 2k1
unhide (hd0,0)
hide (hd0,1)
hide (hd0,2)
rootnoverify (hd0,0)
chainloader +1
makeactive

# 从本地磁盘的第二个主分区启动
title 2k2
unhide (hd0,1)
hide (hd0,0)
hide (hd0,2)
rootnoverify (hd0,1)
chainloader +1
makeactive

# 从本地磁盘的第三个主分区启动
title 2k3
unhide (hd0,2)
hide (hd0,0)
hide (hd0,1)
rootnoverify (hd0,2)
chainloader +1
makeactive

title 系统维护工具
root (hd0,0)
kernel (hd0,0)/boot/grub/memdisk.gz c=274 h=2 s=18 floppy
initrd (hd0,0)/boot/grub/maxdos.img c=274 h=2 s=18 floppy

2007-3-22 09:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 2 楼』:  

从你的菜单来看,似乎找不到什么错误。你这个菜单,用于 win98 估计没有问题。

最原始的 GNU grub 对 win98 是有一定的支持能力的,你在上面的菜单中所使用的所有命令(例如 unhide, hide, makeactive 等等),都是 GNU GRUB 所具有的。你没有用到 grub4dos 所作的任何扩展。

GNU GRUB 对 win98 来说可能有效,但开发此功能的人当时还没有见到 win2000 的影子,不可能试验 win2000 下有无问题。

--------------

我觉得其技术的关键在于,win2000 是如何确定一个 C 盘的。

win98 大概是这样确定的:主分区表中 “活动的”(active)分区为 C 盘,其他盘为 D: E: 等等。

从你的描述来看,win2000 与此不同(或者说是不兼容):它不管分区的“活动”标志,而把排列在前面的分区当作 C 了。

---------------------

grub4dos 是我们大家的,我们完全可以解决这个问题。稍后,我可能要为 grub4dos 增加某些功能,比如说,提供重新排列分区表的功能,以便解决此问题。

谢谢你的深度报道。



因为我们亲手创建,这个世界更加美丽。
2007-3-22 11:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chenall
银牌会员




积分 1276
发帖 469
注册 2002-12-23
来自 福建泉州
状态 离线
『第 3 楼』:  

已经在时空论坛回复了.
是由于GHOST引起的.
由于GRUB隐藏的硬盘在WINDOWS 2000下是可以使用的,只是默认未分配盘符(其它系统比如XP中是无法使用的)
你之前的系统直接GHOST到第二个主分区,启动后系统还是读取原来的C盘.
只须让系统重新分配盘符即可.

  Quote:
不需要修改BOOT.INI的.
其实在GHOST之前做好以下这一步就可以了.
删除注册表中硬盘分区的分配.方法如下:
删除以下注册表中的内容.之后再GHOST(重启之后会自动重建的)

HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices

至于BOOT.INI的内容.GHOST会自动处理.

试试吧,因为我之前做GHOST系统时就遇到了这个问题.通过以上方法可以解决.
祝您好运!



QQ:366840202
http://chenall.net
2007-3-22 12:57
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (366840202)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: