|
hunome
银牌会员
颓废青年
积分 2265
发帖 721
注册 2003-5-12
状态 离线
|
『楼 主』:
我又回来了!请教grub的问题。
好长时间没有来论坛了,还有人记得我吗?
最近对grub for dos感兴趣,但好多东西都搞不懂,是不是老了?
先问一个问题:
如果我想做一个以grub启动软盘镜像,但机器本身没有软驱,该怎么办?用vmware行吗?
如果以前有贴讨论过,能否告知地址?谢谢!
|
|
2005-10-28 22:54 |
|
|
hunome
银牌会员
颓废青年
积分 2265
发帖 721
注册 2003-5-12
状态 离线
|
『第
2 楼』:
哈哈,找到一个gimage,人家以及给做成现成的了。
拿来主义!
|
|
2005-10-28 23:20 |
|
|
GOTOmsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
3 楼』:
哈哈!
作软盘镜象本来就是不需要真软驱的呀!
|
|
2005-10-29 01:27 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
4 楼』:
这个问题,我也有个疑问?
GRUB的启动盘,在VM中怎么建立?
建立的IMG大小有限制没?
|
|
2005-11-16 23:04 |
|
|
不得不爱
超级版主
我爱DOS
积分 5310
发帖 2044
注册 2005-9-26 来自 四川南充
状态 离线
|
|
2005-11-17 07:34 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
6 楼』:
我制作了一个3M多的IMG镜像,我导入GRUB的启动文件BIN(事先我已经把BOOT\GRUB里的文件存到镜像中了)
结果启动到GRUB时(就是显示GRUB,然后就重起了)....
难道GRUB不支持1.44M以上的镜像?
|
|
2005-11-17 08:35 |
|
|
tinybit
初级用户
积分 137
发帖 57
注册 2005-9-29
状态 离线
|
『第
7 楼』:
对于你建立的 3M 的 IMG,可以这么做:
bootlace --floppy your_IMG
然后生办法把 GRLDR 和你自己的 menu.lst 这两个文件拷贝到这个 IMG 中(拷贝到它的根目录下),这就够了。
上述 bootlace 需要在 DOS 下操作,也可以在 WINDOWS 98 的 DOS 窗口操作,或者在 WIN2000/XP 的命令提示符下操作。
这个 BOOTLACE 工具是由新版的 GRUB4DOS 提供的。
不仅支持 3M 的 IMG 软盘,任意大小的 IMG 软盘映象都是支持的。
以上没有提到的其他文件和目录,都没有用处。
|
|
2005-11-17 18:01 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
8 楼』:
谢谢7楼,TINYBIT~~~
不过,好象我在GRUB的帮助文件中没发现这个命令,我回去就试!
|
|
2005-11-17 22:10 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
9 楼』:
OK,可以了`~~~~不过又有问题了.
我在GRUB菜单中想调用另外一个IMG,我用如下格式:
title 启动效率源镜像文件
root (fd0)
kernel (fd0)/tools/memdisk.gz
initrd (fd0)/tools/xly.img
其中TOOLS文件夹包含了MEMDISK.GZ和XLY.IMG了,
但提示错误!
错误行:
kernel (fd0)/tools/memdisk.gz
ERROR26:attemp to access blockouside partition!
不太懂,求教!
[ Last edited by coolboy163 on 2005-11-18 at 10:47 ]
|
|
2005-11-18 10:20 |
|
|
tinybit
初级用户
积分 137
发帖 57
注册 2005-9-29
状态 离线
|
『第
10 楼』:
这是谁的 BUG,现在还无法判断。如果是 GRUB4DOS 的 bug,有希望很快得到解决的。你能否上载你制作的这个 3M 的 IMG 文件?
不知你是否尝试过以下的启动方式:
title 启动效率源镜像文件-仿真软盘
map --mem (fd0)/tools/xly.img (fd0)
map --floppies=1
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
boot
title 启动效率源镜像文件-仿真硬盘
map --mem (fd0)/tools/xly.img (hd0)
map --harddrives=1
map --hook
chainloader (hd0)+1
rootnoverify (hd0)
boot
|
|
2005-11-18 11:34 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
11 楼』:
谢谢TINYBIT的热心指导,这个方法还没试过,回去试下.有时理论上看的通的,但实际做出来就不行了.
我找了下资料,会不会是不是这样的问题呢?
memdisk.gz 后面要加磁盘的C,H,S三个参数,如果是标准的1.44M的话就可以不必加.
如:kernel (fd0)/tools/memdisk.gz 否则就要在后面加c=xx h=xx s=xx
现在上班没时间弄,回家再研究
|
|
2005-11-18 15:25 |
|
|
tinybit
初级用户
积分 137
发帖 57
注册 2005-9-29
状态 离线
|
『第
12 楼』:
根据你的描述,你的错误是出在 kernel 一行。kernel 是 grub 的命令,这应当是 GRUB 在读取 memdisk.gz 文件时出现的错误,似乎和 c=xx h=xx s=xx 没有关系。
我怀疑是 BIOS 不承认你的软盘所导致的。如果你的软盘大小超出了 BIOS 所限定的范围,那么 BIOS 就可能不接受。如果是这样,那就无法解决了。比如,有些软驱只支持 1.44M 的软盘,不支持更大的软盘。如果你在 DOS 下可以正常打开 memdisk.gz 等文件(比如在纯 DOS 下可以拷贝软盘里的所有文件到硬盘),那就说明 GRUB 的 kernel 命令有 BUG。
|
|
2005-11-18 16:05 |
|
|
tinybit
初级用户
积分 137
发帖 57
注册 2005-9-29
状态 离线
|
『第
13 楼』:
刚看到你是用 VMWARE 虚拟机。这个虚拟机不支持大于 1.44M 的软盘。换一个试试,比如用 QEMU,应该就好了。QEMU是一个非常优秀的开源虚拟机软件,功能比 VMWARE 强大得多,它可以运行在许多平台之下,包括 x86 之外的 CPU,如 苹果的,SUN的,SGI的,当然在 x86 平台的 LINUX 和 WINDOWS 下运行最好了。这使得这个虚拟机软件将会越来越流行。
|
|
2005-11-18 16:14 |
|
|
coolboy163
初级用户
积分 176
发帖 74
注册 2005-11-7
状态 离线
|
『第
14 楼』:
谢谢~~~
TINYBIT真是太热心了,刚忙完.
刚才用你的方法改了下,呵呵,现在问题比较明显了
提示:
map --mem(fd0)/tools/xyl.img(fd0)
autodetect number-of-heads failed.user default value 2
autodetect sectors-per-tract failed.user default value 63
ERROR26:attemp to access blockouside partition!
press any key to continue........
难道真的是VM的问题?只能支持<1.44M的?
再次感谢TINYBIT,我刚学GRUB,能遇见这样的好人,真是太幸运了,现在对GRUB的认识越来越深了.现在网上的资料都是比较浅显,找到的都是一个模样的.(也许我太笨,找不到)
[ Last edited by coolboy163 on 2005-11-18 at 16:44 ]
|
|
2005-11-18 16:42 |
|
|
tinybit
初级用户
积分 137
发帖 57
注册 2005-9-29
状态 离线
|
『第
15 楼』:
对于这个情况,重新安排你的 xyl.img 或许可以解决问题,也就是说,把 xyl.img 存放在 1.44M 以内,让 DOS和BIOS可以访问到它,刚才粗略试验了一下,QEMU 好像也不支持大于 1.44M 的软盘。
其实,许多真实机的 BIOS 也都不支持 2.88M 以上的大软盘,所以,我们其实也不能责怪 VMWARE 和 QEMU 这些虚拟机。
但是幸运的是,GRUB4DOS 却支持任意大小的软盘,你可以尝试以下操作,不出意外的话,应该成功:
首先从硬盘进入 GRUB4DOS 的环境,假定你的 3M 的 IMG 在 (hd0,0) 上,在 GRUB 提示符下敲入以下命令序列:
map --mem (hd0,0)/your_3M_img (fd0)
map --floppies=1
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
boot
当进入软盘之后,你可以继续操作你的 xly.img。
或者,干脆你直接把 xly.img 放在硬盘上,然后直接用类似的方法用 GRUB4DOS 来运行它就好了。
|
|
2005-11-18 17:23 |
|