|
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
状态 离线
|
|
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
状态 离线
|
|
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 |
|