中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区 » Blue777 的GRUB disk一点技术方面的疑问。请高手指点一下。
作者:
标题: Blue777 的GRUB disk一点技术方面的疑问。请高手指点一下。 上一主题 | 下一主题
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『楼 主』:  Blue777 的GRUB disk一点技术方面的疑问。请高手指点一下。

Blue777的GRUB disk 一点疑问。请高手指点一下。
最近想把dos启动盘换成grub的引导。特意把Blue777的GRUB disk 2006/03 的哪个当下来了,研究了一下。
不看不知道,一看还真有点不明白。
config.sys 和autoexec.bat部分没有任何问题。这些我都明白。
我就一点不明白:
系统是怎么引导到grub上去的。翻遍了config.sys 和autoexec.bat文件,仔细的看了好多遍,没有一处加载grub。
找到img文件,查看目录结构,到  boot\grub下面一看。奇怪了。连grub.exe 都没有。
在作实验,删掉整个文件,只保存boot\grub目录及其文件。依然可以引导。
这下我算明白了,作者是个高手。估计是自己改了引导方式了。
这个已经超出我的能力了,我都不知道如何弄的。

我在http://grub4dos.jot.com/WikiHome这里看到,作者有一句话提到:
You can boot the GRUB4DOS boot-loader/boot-manager in different manners:
(1) Run GRUB.EXE at the DOS prompt or in AUTOEXEC.BAT
(2) In CONFIG.SYS of DOS/Windows9x, use DEVICE=GRUB.EXE or INSTALL=GRUB.EXE or SHELL=GRUB.EXE
...
...
...
这个我明白了,太明白了,config.sys 或autoexec.bat配制一下就可以了。
dos引导grub。

Blue777的GRUB disk这个真的不同,我的水平比较菜。真的不知道他是如何引导grub,在引导img格式的dos到内存盘。

我知道我菜,我是真的很想学习一下。这个技术很厉害。

而且我看到作者用的GNU grub 0.95,我想换成不点的 grub for dos 2007的最新版。

请大侠指点一下,给一个思路,需要哪些知识和要点。
我确实想掌握这点技术。

谢谢!!

我想上传两张图,好像没有上传的按钮啊。

[ Last edited by bihaichangkong on 2007-3-7 at 07:47 PM ]

2007-3-8 08:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 2 楼』:  

级别太低了,没有传附件的权限吧。传个图说的清楚点。

2007-3-8 08:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hnlyzhd
高级用户




积分 544
发帖 164
注册 2004-10-17
状态 离线
『第 3 楼』:  

用工具把GRUB安装到软盘 引导区DBR



    我的留言簿

http://hnlyzhd.ys168.com            我的网络盘
2007-3-8 21:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 4 楼』:  

baidu,google上搜了好多,看了以后真是不明白。
没有一个系统的完整的资料介绍给我这样的初学者。

我是一个grub的门外汉
太谢谢hnlyzhd了。
这一点足够了。
原来是bios-》引导区DBR -》dos啊
这种方式就先于dos获得了控制权。
难怪grub在引导dos。
自是grub for dos的名字让我以为它是一个dos程序
dos程序怎么能先于dos引导呢。

谢谢hnlyzhd,你让我明白了。

2007-3-8 22:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 5 楼』:  

作者在menu.lst
里面有这样写:
title 1. Super MS-DOS 7.10 Copyright (c) 2005-2008 Guoxiang.Pu
root (fd0)
chainloader /boot/grub/msdos.bs

title 2. Dynamic Drive Overlay (DDO) V9.57
root    (fd0)
chainloader /boot/grub/dm.bs

title 3. Boot from 1st Hard Disk
root (hd0,0)
chainloader +1

title 4. Boot from 2nd Hard Disk (DOS/Win9x only)
root (hd1,0)
map (hd1) (hd0)
map (hd0) (hd1)
makeactive
chainloader +1

title 5. Boot from Floppy
chainloader (fd0)+1
rootnoverify (fd0)

title 6. Boot from CD-ROM
root (fd0)
chainloader /boot/grub/bcdl.bs

title 7. Reboot
reboot

title 8. Power Off
halt

这个红色的部分:
chainloader /boot/grub/msdos.bs
msdos.bs是引导文件吧,作者是怎么写的。
如果我想改为自己的,如何作动作。

2007-3-8 22:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 6 楼』:  

用wingrub可提取img的原bs。



Windows 一键还原
http://www.yjhy.com
2007-3-8 23:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 7 楼』:  

经过耐心的学习和搜索,总算是搞明白了启动引导的问题。
看来是年月久远啊。

GNU GRUB和 不点的GRUB for dos有相同的也有不同的。
比如如何按照在floppy 或是usb的引导处理就有一点区别。

blue777用的是学习的Wengier是方式,Wengier用的很老的 0.5.95 版本。这些都是GNU GRUB的东东。
他们的这些启动盘都是采用的比较老的gurb。
首先把 boot/grub 目录拷贝到 软盘的该目录下(也就是说软盘上存在 /boot/grub 目录),然后,如果空间紧张的话,删去与 FAT 无关的那些个stage1.5文件,进入 grub ,在 grub; 提示符下敲入

root (fd0)
setup (fd0)

这就完成了,这张软盘就可以引导 grub 了。


而我是初学,从grub for dos 的2007年最新版本开始入手学习的。

搞懂他们间的区别联系要花的时间精力啊。
唉,文档散步在各各角楼,就是没有一个完整的。
不知道下一个初学者又要想我这样花费多少精力。

还是用不点的方式:
下载grub for dos 找到那个映象是一个 FAT12 格式的文件
复制一个chinese 目录下的 GRLDR 文件到它的根目录,就可以引导 GRUB 了。
除了 GRLDR之外,其它所有的文件和子目录,都可以通通删去。
也就是说,整个软盘只要有一个 GRLDR 在根目录就行了。软盘的第一扇区不是 DOS的引导程序代码,而是 GRLDR 的引导代码。

在执行时,这个引导程序不去寻找 IO.SYS 文件,而是要寻找 GRLDR 文件。

为了从逻辑上说服我自己他是如何先于dos引导的,就这个花了我整整两天在网上找资料。找到了不点的这句话我才释然啊。

文档的不完整影响大啊。

[ Last edited by bihaichangkong on 2007-3-8 at 04:53 PM ]

2007-3-9 05:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 8 楼』:  

启动部分我是完全的明白了。

原来的dos部分config.sys,autoexec.bat 这些都没有问题。

现在进入grub的menu.lst学习了。

blue777提供都是一些.bs文件,他是在么menu.lst里引导这些.bs 文件。看来他是不想让人知道了,搞的神龙不见首尾啊。

谢谢lianjiang2004提到的用wingrub可提取img的原bs,有你这句话就够了。慢慢搜寻学习吧。

2007-3-9 05:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 9 楼』:  

如果有那位兄弟能够指点一下为什么采用这些bs文件的方式引导dos,而不采用img的方式。

那就太谢谢了。

不点的最新版本gurb里menu.lst好多都是引导img文件,blue777却是  .bs方式。

是年代久远(2006年3月)还是另有玄机?

2007-3-9 06:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by bihaichangkong at 2007-3-9 06:14:
如果有那位兄弟能够指点一下为什么采用这些bs文件的方式引导dos,而不采用img的方式。

那就太谢谢了。

不点的最新版本gurb里menu.lst好多都是引导 ...

”不点的最新版本gurb里menu.lst好多都是引导img文件“,引导的是其它img文件,这也是我们平常用的最多的。现在多种windows下运行的一键备份都是如此的。
“blue777却是  .bs方式”,这里引导的是装了grub的img里的io.sys,以进入dos。

有一阵子我也对把grub装入img文件感兴趣,查了一些资料,确实grub4dos的文档资料很不全。最终大概知道怎么弄了,觉得意义不大,就没深入了。
有个工具能制作grub启动img。

GImage:这个程序能够生成一些大小的 Grub 可启动软盘镜像文件。
可去软件时空论坛下载,那里是grub4dos的大本营。

附件 1: Snap1.jpg (2007-3-9 07:01, 73.35 K)




Windows 一键还原
http://www.yjhy.com
2007-3-9 07:01
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 11 楼』:  

lianjiang2004:

你提到:
“blue777却是  .bs方式”,这里引导的是装了grub的img里的io.sys,以进入dos。

我也在往这个方面猜想。但就是不敢肯定。你这一说。
至少要节省N的时间和精力去验证了哪个.bs 文件是啥东东,怎么作的。

我真是超级感谢你。谢谢你和上面的几位兄弟,只言片语对我足够了。
再次表示感谢。

随便谈谈我这几天学习grub的感想:
GRUB 其实一点都不难,有点计算机基础的人三五天都可以作一个启动盘出来。
但其文档的散乱性却把它搞的奇难无比。

我初学grub下载的哪个grub文件。里面一堆的文件,如果没接触过,谁知道grldr  和grub.exe两个有啥区别,到底用哪个?怎么用了?还有哪些stage干啥用的,bin文件和source文件混再一个目录里,你让用户怎么区分啊。
建立一个bin文件夹,建立一个src文件夹,大家一看就知道,搞开发到src里去,使用的到bin里去找。多好。非要把使用者当开发人员对待。唉。

不明白,只好到处google,唉。

按理来说一个图文帮助的文档简单的说一下GNU grub 和grub for dos的区别,以及
两种安装grub的方式就可以。

可以翻遍了网络就是找不到这样的文章。
这样的一个基本文档只要花上3-5个小时就可以完成。
可是开发者就是不作。唉。

不点的言论 我在搜索中发现散步在各个不同的帖子里。他有时间给各个人提交的bug
作长篇的解释。就是不愿花4-5个小时作一个最基本的图文并茂的文档介绍GNU grub 和grub for dos的区别,如何安装。作一个chm文档赴在下载文件里。

每一个想我这样有点dos基础的人想学习grub的人本来只要1-2天就可以搞懂了。
结果是为了片言信息花90%以上的精力在google上去了。这样搞我也是绝的是在浪费精力,不想深入。

blue777的盘我研究了这几天,决的不想深入了,他的方式太古老了。完全是采用GNU grub的方式。写stage文件。

我还是用不点提供的哪个img镜像作方便些。
Wengier和blue777的dos部分我全收啊,这可是他们的精华。是人家无价之宝。
这里对他们表示感谢。

[ Last edited by bihaichangkong on 2007-3-8 at 09:37 PM ]

2007-3-9 10:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hnlyzhd
高级用户




积分 544
发帖 164
注册 2004-10-17
状态 离线
『第 12 楼』:  

DOS.BS是一个标准的软盘DOS引导盘的DBR,虽然没有再看它应该是512字节!

新版的GRLDR引导盘已经可以不用要DOS.BS了,

你可以直接用chainloader (fd0)/io.sys直接启动DOS了!



    我的留言簿

http://hnlyzhd.ys168.com            我的网络盘
2007-3-9 22:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fattyhk
初级用户





积分 52
发帖 25
注册 2007-2-23
状态 离线
『第 13 楼』:  

呵呵 菜鸟的我看的还是有点晕 不知道那位高手能花个4-5小时 写个readme文档啊 谢谢啦

2007-3-9 23:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bihaichangkong
初级用户





积分 22
发帖 10
注册 2007-3-8
状态 离线
『第 14 楼』:  

hnlyzhd 非常的谢谢对DOS.BS的解释。这样就更明白了。
dos联盟这里高手真是多啊。
你提到的方法,我已经用到了。
不过最好加一个
find --set-root /io.sys
chainloader /io.sys
这样这就不比为U盘被识别为fd0,hd0烦劳了。呵呵

2007-3-10 02:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: