中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] »
作者:
标题: GRUB 伤脑筋的问题, 大家会诊一下 上一主题 | 下一主题
不点
银牌会员

不甘寂寞的人


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

是的, 完全支持的.

GRUB.EXE 和 GRLDR 默认使用 (hd0,0)/boot/grub/menu.lst 菜单, 如果它存在的话.

也可以用命令行参数来调整所需要的 menu.lst 文件:

GRUB --config-file=(hd?,?)/somewhere/else/your_menu_lst_file

GRLDR 的第一扇区末尾有字符串 (hd0,0)/boot/grub/menu.lst, 可以用一个 hexeditor 把它改成别的文件名.

MENU.LST 文件中可以有我们的 map 命令, 这个肯定是支持的.




因为我们亲手创建,这个世界更加美丽。
2004-2-18 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 197 楼』:  



  Quote:
以下是引用不点在2004-2-18 16:10:18的发言:
是的, 完全支持的.

GRUB.EXE 和 GRLDR 默认使用 (hd0,0)/boot/grub/menu.lst 菜单, 如果它存在的话.

也可以用命令行参数来调整所需要的 menu.lst 文件:

GRUB --config-file=(hd?,?)/somewhere/else/your_menu_lst_file

GRLDR 的第一扇区末尾有字符串 (hd0,0)/boot/grub/menu.lst, 可以用一个 hexeditor 把它改成别的文件名.

MENU.LST 文件中可以有我们的 map 命令, 这个肯定是支持的.

Oh! Thanks a lot!

That is wonderful!

After your MBRs are finished, that is a very convenient tool.

We shall develop a GRUB for Windows to support your GRUB for DOS by:

1. copy the MBRs to hard disk of choice within windows
2. copy GRUB.EXE / GRLDR and /boot/grub/menu.1st to the root directory of
    FAT12/16/32/NTFS of choice under windows

Any other files?

[em12][em12][em12]

2004-2-18 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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

只有 GRLDR 需要处于根目录, 其它不必.

从 MBR 引导的将是 GRLDR 文件, 而 GRUB.EXE 将不再使用.

GRLDR 文件接管控制之后, 自动读取 (hd0,0)/boot/grub/menu.lst 文件作为菜单. 如前所述, 可以用 hexeditor 来修改这一文件的位置和名字.

MBR 可能不仅仅是一个扇区, 而是好几个扇区. 但最多不会超过 63 个扇区.

为了找到 FAT12/16/32/NT 上的 GRLDR 文件, 只有一个扇区是不行的. 所以, 硬盘开头的 4 个扇区都要用上. 以后扩展的话, 全部 63 个扇区都可能要用上.

我们并不修改 FAT12/16/32/NT 本身的 BOOTSECTOR, 我们的引导程序全部驻留在 MBR 上, 这里所说的 MBR 是指硬盘开头的全部 63 个扇区, 精确的说, 是第 0 磁道的全部扇区(也即 0 柱面, 0 磁头的全部扇区)

注: 如果硬盘的 sectors per track 不是 63, 那么 "第 0 磁道的全部扇区" 就不等于 63 了.






因为我们亲手创建,这个世界更加美丽。
2004-2-18 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 199 楼』:  

TO wengier 兄:

这个网页能否更新一下:
http://newdos.yginfo.net/grubdos.htm


OK,刚才已将以上网页更新,再看看吧。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-2-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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

非常感谢.

我忘了提到另一个可改之处:
as a diff patch to the grub-0.93 release
改为
as a diff patch to the grub-0.94 release

不过, 这个没有太大关系, 不改也可以.

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

噢, 还有这一句话:

Tinybit, a nice Chinese person, ported the GRUB executable program and installer to DOS. THIS IS A VERY GOOD NEWS FOR ALL DOS USERS!

去掉比较好(提到某个人的名字不很舒服). 为了网页的干净利索, 还是去掉吧.

GPL 的项目, 通常被认为是大家的, 甚至也没有国界. 通常 GPL 的项目也不会完全是一个人的事情, 而是有多人参与的. 所以, 提到某一个人, 并不太合乎时宜.

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

还有, 标题上的 GNU GRUB FOR DOS 似乎改成 GRUB for DOS 比较好.

1. GRUB for DOS 不是 GNU 的 project(仅仅是以 GNU GRUB 作为基础, 在这之上做的二次开发)

2. 改成 GRUB for DOS 之后, 就不至于同 GNU GRUB 混淆起来了.

3. GNU GRUB for DOS 的说法, 容易引起歧义: a. GNU (GRUB for DOS) 和 b. (GNU GRUB) for DOS, 后者的理解才比较接近于正确, 但是我们项目的名称不叫做 GNU GRUB for DOS, 而是叫做 GRUB for DOS.









[此贴子已经被作者于2004-2-19 9:04:06编辑过]






因为我们亲手创建,这个世界更加美丽。
2004-2-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 201 楼』:  

OK,已再次修改了。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-2-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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

GNU GRUB for DOS ----> GRUB for DOS

另外, 不知能否在 http://denbbs.2ya.com 也允许报告 BUG 呢?

FAQ 以及其它文档, 留待以后再完善吧.






[此贴子已经被作者于2004-2-19 9:30:39编辑过]






因为我们亲手创建,这个世界更加美丽。
2004-2-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 203 楼』:  

不点:这些刚才已修改了,再看看吧。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-2-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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

谢谢 wengier

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

另外, 感谢 windrv 兄提供的 BOOTPROG 的消息. 是个不错的软件.

我今天特别看了 GRUB 的入门材料, 了解到 GRUB 通过 stage1.5 是可以引导 stage2 的. 即使 stage2 被整理了碎片也没有妨碍. 而我们目前的 bootgrub (如果放在 MBR) 已经能够解决 NTFS 系统下的类似问题. 所以, 有关 MBR 的问题其实可以算是差不多了. 有鉴于此, 所以, 我们有关 MBR 的后续工作将会放缓, 慢慢做.

我们的做法和 STAGE 1.5 是类似的, 不同的地方在于:

1. stage1.5 随文件系统的不同而变化, 而我们的程序只有一个, 可以适应一切文件系统, 只要我们支持了该文件系统(最先支持的, 仅仅是微软的文件系统FAT/NTFS).
2. stage1.5 用 C 语言编写, 占用空间大. 我们用 ASM 编写, 可以做到最精简.
3. 当用分区软件对分区进行调整时, stage1.5 可能失效, 我们的程序能够适应这种调整.
4. 我们按照微软 DOS 的惯例, 将内核文件 GRLDR 放在根目录, 而不是 /boot/grub 目录.

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

呵呵, GRUB 越来越像是一个操作系统了. 和真正的操作系统( 例如 DOS )不同, GRUB 不修改 BIOS 的中断向量. 真实的操作系统都要安装在某个固定的分区上, 而 GRUB 可以流动, 无固定场所, 寄生在任意一个分区里面, 四海为家.





因为我们亲手创建,这个世界更加美丽。
2004-2-19 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
windrv
中级用户




积分 385
发帖 118
注册 2003-11-11
状态 离线
『第 205 楼』:  



  Quote:
以下是引用不点在2004-2-19 14:46:39的发言:
谢谢 wengier

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

另外, 感谢 windrv 兄提供的 BOOTPROG 的消息. 是个不错的软件.

我今天特别看了 GRUB 的入门材料, 了解到 GRUB 通过 stage1.5 是可以引导 stage2 的. 即使 stage2 被整理了碎片也没有妨碍. 而我们目前的 bootgrub (如果放在 MBR) 已经能够解决 NTFS 系统下的类似问题. 所以, 有关 MBR 的问题其实可以算是差不多了. 有鉴于此, 所以, 我们有关 MBR 的后续工作将会放缓, 慢慢做.

我们的做法和 STAGE 1.5 是类似的, 不同的地方在于:

1. stage1.5 随文件系统的不同而变化, 而我们的程序只有一个, 可以适应一切文件系统, 只要我们支持了该文件系统(最先支持的, 仅仅是微软的文件系统FAT/NTFS).
2. stage1.5 用 C 语言编写, 占用空间大. 我们用 ASM 编写, 可以做到最精简.
3. 当用分区软件对分区进行调整时, stage1.5 可能失效, 我们的程序能够适应这种调整.
4. 我们按照微软 DOS 的惯例, 将内核文件 GRLDR 放在根目录, 而不是 /boot/grub 目录.

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

呵呵, GRUB 越来越像是一个操作系统了. 和真正的操作系统( 例如 DOS&nbsp不同, GRUB 不修改 BIOS 的中断向量. 真实的操作系统都要安装在某个固定的分区上, 而 GRUB 可以流动, 无固定场所, 寄生在任意一个分区里面, 四海为家.


Dear TinyBit,

Waiting for your good news!

Your idea is equivalent to: GNU GRUB's MBR (Stage 1) + an ever expanding
Stage 1.5 for all popular partition types = Stage 1+ all-purpose Stage 1.5
put into the first sectors (within 63 sectors limit) of any bootable hard disk.

Is it?

I think it should be able to load up GRLDR independently without relying on
,let's say, NT boot sector or other boot sectors. To boot up these boot sectors
should be the responsibility or task of GRLDR.

So GRLDR could then boot up any OS relying on their own boot sector residing on
their own partition or boot up bootable disk-image files using virtualization commands.

[em12][em12][em12]

2004-2-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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

Your idea is equivalent to: GNU GRUB's MBR (Stage 1) + an ever expanding
Stage 1.5 for all popular partition types = Stage 1+ all-purpose Stage 1.5
put into the first sectors (within 63 sectors limit) of any bootable hard disk.

Is it?

是的.

I think it should be able to load up GRLDR independently without relying on
,let's say, NT boot sector or other boot sectors. To boot up these boot sectors
should be the responsibility or task of GRLDR.

这个问题, 就看怎么理解了. 其实在使用时完全没有问题的. 对于 FAT12/16/32 这类, 我们完全使用自己的代码来启动 GRLDR, 而对于 NTFS 里面的 GRLDR, 我们借用 NT 的 bootsector 中的程序来引导 GRLDR. 我们仅仅是不想编写 NTFS 的 boot sector 才利用 NTFS 分区已经存在的 boot sector 的. (编写这样的 bootsector 程序, 将是一件比较困难的事情). 当 GRLDR 被引导起来之后, 它当然可以启动 NTFS 的 bootsector 了, 此时使用 chainloader 命令, 启动的将是通常的 NTLDR.

不要混淆了这样两件事情: BOOTGRUB 和 GRLDR:

BOOTGRUB 的目的仅仅是找到 GRLDR 并把控制交给 GRLDR. 因此, BOOTGRUB 用什么手段找到 GRLDR, 都无关紧要. 当 GRLDR 接管控制之后, GRLDR 不知道自己是处在哪个分区, 也不知道它自己是怎么引导起来的. 它只是被 BOOTGRUB 放在了内存中, 它不知道它自己在磁盘上的确切位置. GRLDR 只管运行自己的代码, 别的都不管. 因此, 它完全像通常的 GRUB 一样, 可以使用 chainloader 命令来引导任意的操作系统, 当然也可以用任意的 map 命令来仿真磁盘.

BOOTGRUB 和 GRLDR 的分工是很明确的. BOOTGRUB 只管找人, GRLDR 只管干活. 它们谁都不会重复去做对方也做的那些事情. 找人的人, 完全不知道被找的人能干什么和要干什么. 被找到的人完全胜任自己的工作, 但它不会知道它自己是怎么被找到的, 不知道是谁从哪里用什么方法把它找到的. 它就像是被人用囚车送来工场干活的一样.

So GRLDR could then boot up any OS relying on their own boot sector residing on
their own partition or boot up bootable disk-image files using virtualization commands.

当然是的. 现在的 BOOTGRUB 和 GRLDR , 从某种意义上说, 已经(部分地)达到了这个目标. 它的限制是: GRLDR 需要处于一个含有 NT BOOT SECTOR 的主分区上.




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





积分 2202
发帖 499
注册 2003-6-12
状态 离线
『第 207 楼』:  

当我还原了1个有xp的启动文件镜像到Vpc里,即使没有NT分区,它同样在Boot.ini里能启动. 问问不点大哥: Splashimage命令只能用在命令行吗? 怎么放在Menu里不能启动呢?背景图片做得真不错,只可惜背景与文字都是灰色的,看着费力点,呵呵...




一年四季,枫叶红了又红;人生四季,失去的,还能再来吗?—— !
2004-2-22 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 208 楼』:  



  Quote:
以下是引用cavvie在2004-2-10 1:14:12的发言:
中文估计比较困难,并且也没有什么意义:)

其实据说蓝点Linux发行版中已给GNU GRUB加入了中文支持,而且汉化了部分命令。网上应该有相关patch程序的。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-2-22 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


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



  Quote:
以下是引用xiaojun在2004-2-22 2:12:19的发言:
当我还原了1个有xp的启动文件镜像到Vpc里,即使没有NT分区,它同样在Boot.ini里能启动. 问问不点大哥: Splashimage命令只能用在命令行吗? 怎么放在Menu里不能启动呢?背景图片做得真不错,只可惜背景与文字都是灰色的,看着费力点,呵呵... 

没有 NTFS 是可以的,但没有 NT 的 boot record 扇区是肯定不行的。在 FAT32 的分区上,NT 安装程序已经建立了 NT 的 boot record。该 FAT32 分区的第一个扇区含有 NTLDR 字样,并非通常的 DOS/win98 引导扇区。

另外我刚刚在 VMWARE 里测试过了,spalshimage 命令在菜单中也能使用。我把它放在 timeout 命令之前,已经显示出画面了。

robin 图片仅仅是用来测试的,它并非是我制作的,而是从网上免费下载的自由图片。我不会制作图片。这个图片很小,其实我在此之前从来没有测试过它的效果。





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





积分 2202
发帖 499
注册 2003-6-12
状态 离线
『第 210 楼』:  

我的菜单这样放的,还是要输命令,才能有背景哪儿是错的?)
# This is a sample menu.lst file. You should make some changes to it.
# Added items for installing GRUB [ which is on your DOS drive C: ] to MBR

color blue/cyan yellow/cyan
splashimage (hd0,0)/boot/grub/robin.xpm.gz
timeout 0
default 0

谢谢


[此贴子已经被作者于2004-2-25 21:38:38编辑过]






一年四季,枫叶红了又红;人生四季,失去的,还能再来吗?—— !
2004-2-22 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: