无忧启动论坛

标题: 刚学写grub,请问这样命令出什么问题 [打印本页]

作者: liangzeguo    时间: 2008-11-11 15:53
标题: 刚学写grub,请问这样命令出什么问题
我想把几个vcd系统镜像文件(iso)直接放进一个DVD里,用GRUB调用,命令如下:
# 启动xp1
title 启动xp1
scdrom --install
root (cd)
map (cd)/xp1.iso (hd32)
map --hook
scdrom --bootcd



# 启动xp2
title 启动xp2
scdrom --install
root (cd)
map (cd)/xp2.iso (hd32)
map --hook
scdrom --bootcd


这样出什么问题,可能我表达不好,需要提供什么信息请说,,望DX帮助.

    补充1:   目的是这样,我有两张vcd光盘,一张是fedora,另一张是ubuntu,都是live版本,希望能合成一张dvd,用grub就能任意调用其中一个系统.
    思路就是一点:  用map命令把dvd光盘里面的iso文件直接仿真成第二个光驱然后直接启动.
    望dx别只说不行不行,希望指出问题所在,到底是命令用错,还是其它什么原因,先谢!

    补充2: 首先谢谢Climbing 详细的回答.我之前在本站下载一本"grub for dos应用教程"电子书,里面就有"scdrom --install"  这个命令,而没有"cdrom"这命令,看来是旧书.

[ 本帖最后由 liangzeguo 于 2008-11-12 01:00 编辑 ]
作者: lianjiang    时间: 2008-11-11 16:09
不知你的创作思路源自哪里?
作者: yichya    时间: 2008-11-11 17:57
这个GRUB似乎已经很老了。
这样,肯定很难成功,不信可以试试。如果是XP安装程序,那就完了,完全不可能成功。
作者: Climbing    时间: 2008-11-11 22:13
也不是一点儿希望也没有。

首先,这个scdrom --install是很古老的grub4dos才支持的加载光驱驱动的方式,新版的grub4dos已经不支持这个命令了,而这个map iso (hd32)的方式是新版的grub4dos才支持的,两个命令不可能出现在同一个菜单中。

在新版的grub4dos中大致应该使用下面的命令序列来完成:
cdrom --init
map --hook
map (cd0)/xxx.iso (hd32)
map --hook
kernel (hd32)/vmlinuz options
initrd (hd32)/initrd.gz

现在很多livecd支持从物理存储介质的ISO文件中启动系统,所以,只要给内核传递适当的参数,适当修改相应的init脚本,完全可以实现你的要求。

不过,前提是:grub4dos的cdrom --init能够驱动你的光驱并正常访问你的光盘,否则,成功的可能性就很小了。grub4dos中内置的光驱驱动是从别的软件中引入的,只支持标准的atapi光驱,其成功率与bios密切相关,不成功的机率很大。当然,如果你的DVD盘用grub4dos推荐的方式将grldr作为启动软件,这个成功率就比较高了,可以省掉使用cdrom --init那个过程。




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3