当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 39 篇帖子 ]  前往页数 1, 2, 3  下一页
作者 内容
1 楼 
 文章标题 : GRUB4DOS 简介
帖子发表于 : 2008-09-18 16:38 
头像

注册: 2006-09-19 18:16
帖子: 3711
送出感谢: 0 次
接收感谢: 3
注:这篇东东写于 2007 年 1月,曾发在 linuxsir 论坛,现转过来,希望能给有需要的朋友提供些参考。

GRUB4DOS(GRUB FOR DOS)简介

相信许多liunxer初次听到“GRUB4DOS”这个名字,第一感觉就是:这个对我没用,因为我不用DOS,即使用也不会去通过它启动GRUB。先别急,再问一句:您是否用过grldr呢?是否用过MaxDos、一键ghost、矮人DOS工具盘?如果答案是肯定的,那您已经在用GRUB4DOS了。

是它的名字给人们造成了误解,这也是历史遗留问题——一开始仅仅是“for dos”,而后来开发越来越深入,“FOR DOS”已远不能涵盖其全部。于是它的名字就成了一个障碍,新接触的人往往望名生意,以为它是专给DOS用的,便不去关注——我本人就是如此,很久之后才重新发现它,所以写下这篇文字,希望更多人能够了解并使用这一优秀作品,享受它带来的可靠与便捷。

首先搞清楚与 GNU GRUB 的关系。 GNU GRUB 分为 GNU GRUB Lagecy 和 GNU GRUB2 两代 。GNU GRUB Lagecy 其实就是原来的 GNU GRUB 0.xx ,最新版是 2005 年发布的 GNU GRUB 0.97 。目前已停止开发,并改名为 GNU GRUB Lagecy 。GNU GRUB2 是第二代 GRUB,它将取代原来的 GNU GRUB (例如0.9x版),但目前还处于开发阶段,尚未发布正式版。

而 GRUB4DOS 则是对 GNU GRUB Lagecy 的二次开发。该项目最早由 不点 在2003年发起,目前主要由他、bean 和另外几位中国人维护,很多人贡献了代码,再加上广大网友热心帮助,使得 GRUB4DOS 不断完善。在当前 新的 GRUB2 没有到位、老的 GNU GRUB Lagecy 又有许多不完善 的情况下,GRUB4DOS 受到越来越多人的欢迎。

GRUB4DOS 在保留 GNU GRUB 0.97 原有功能的基础上,做了很多改进,简单归纳如下:

1、A20代码 和 bug修正
对A20的处理历来就是一个棘手问题。当初IBM引入这一设计,本意是为了让以往那些BUGGY软件能够运行,结果造成后世无穷无尽的隐患。当然不能全怪 IBM,真正应当责怪的是那些不遵守IBM标准的硬件厂商,它们生产的系统无法用常规的几种方法来控制A20,使得软件开发者可能在很多意想不到的地方碰上A20这个妖魔,除了造成死机之外,还导致执行效率的极度降低。在微软的XMS规范中就明确写着,A20的控制在有些机器上是非常耗时的一个操作。

GNU GRUB 0.97中的A20代码很明确是有问题的,这在GNU GRUB邮件列表档案中就有提到。很多用户报告在使用gnu grub 0.97时键盘失去响应。grub开发组在grub2中对A20代码打了补丁,以解决这些问题,但是这个补丁并没有打到我们目前广泛使用的0.97版上。为此GRUB4DOS用取自Linux内核的A20代码替换了原代码,并参考其他一些开源代码做了很多改进,基本上解决了这一问题。

A20只是改造的一个方面,在GRUB4DOS的开发过程中修复的GNU GRUB 0.97的bug还有很多,有些在Changelog中并没有提到。到目前为止,已经把那些严重的BUG排解殆尽了,应该可以比较平滑地使用GRUB4DOS了。

2、磁盘仿真(虚拟磁盘)
这是GRUB4DOS的一大特色功能,开发者下了不少功夫。这一功能是将 软盘镜像或硬盘镜像甚至某个硬盘分区 虚拟成 软驱或硬盘,进而运行其中的操作系统(DOS、win98),类似于以前流行的“虚拟软驱”(vfloppy),但功能要强得多。
用SYSLINUX中的memdisk也可实现虚拟磁盘。比较而言,GRUB4DOS功能更强,限制更少,用法更灵活,同时对bios的要求也要高那么一点点,在一些BIOS有缺陷的机子上可能会出问题(不过不用太担心,实践表明这种情况极其罕见)。

3、多种方式进入grub环境

1)通过dos
在dos下运行grub.exe即可进入纯粹的grub环境,并部分地支持退回到DOS。也可把grub.exe作为 CONFIG.SYS 里的设备驱动文件而运行。

2)通过Windows启动菜单
这是被广泛使用的一种用法。MaxDos、一键ghost硬盘版、矮人DOS工具盘之类的软件就是以这种方式启动grldr,再通过磁盘仿真虚拟出一个软驱,进而启动DOS的。

3)将GRUB4DOS引导代码写入硬盘MBR,开机直接进入grub环境
乍一看这不算什么改进——GNU GRUB本来就可以这样引导,但实际上在这里 GRUB4DOS 有相当大的革新。
GNU GRUB 的安装方法是:
root (xxx,x)
setup (xxx)
第一句是指定一个分区,该分区须存放有/boot/stage1和/boot/stage2文件,第二句是将引导代码写入硬盘MBR。这样安装的 GRUB,其MBR引导代码被设置为从固定的分区加载stage2。假如我们某一天因为某些原因,需要删除或格式化该分区,或者做一些会引起该分区序号变化的操作(比如用 pqmagic 在该分区前添加或删除分区),就需要预先重装一次grub,重新指定存放stage2文件的分区,否则将无法引导。这一点上 GNU GRUB 显得不够灵活。

而 GRUB4DOS 采取了新的策略:其MBR引导代码并非固定地指向某个分区,而是搜索所有分区,查找并加载 grldr,只要某分区上存有一份 grldr,就能启动。而且安装时可以将原微软的MBR备份,启动时如果找不到grldr,便自动加载备份的MBR。显然这种方式更加灵活、稳健,所以 GRUB4DOS 虽然保留了 GNU GRUB 的全部命令和功能(包括 setup 命令),但不推荐使用传统的安装方式。

当然 GRUB4DOS 方式也不是十全十美,因为其引导代码还不能识别所有的文件系统,目前支持仅 NTFS/FAT12/FAT16/FAT32/EXT2/EXT3(也不少了 ,以后将支持更多的格式),所以可能需要专门设一个分区来存放 grldr 。不过在我看来这是值得的,一点小麻烦换来了更多的方便和稳定。

4、图片背景支持
可用 640x480@14位色 的图片做背景。图片制作请参考这里: http://bbs.znpc.net/viewthread.php?tid= ... a=page%3D4

5、中文支持
GRUB4DOS 发布有中文版,大大方便了中文用户。

6、光驱支持
该功能使得用户可以再GRUB环境下访问光驱,并可由光驱启动,很实用。


GRUB4DOS WIKI: http://grub4dos.sourceforge.net/wiki/in ... /Main_Page
GRUB4DOS 下载地址: http://download.gna.org/grub4dos/
GRUB4DOS 论坛讨论区:http://www.znpc.net/bbs/forumdisplay.php?fid=4


_________________
Ubuntu 系统备份、恢复、克隆、批量部署、制作 live 系统


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-09-18 17:05 
头像

注册: 2008-02-17 23:47
帖子: 22109
地址: 美丽富饶的那啥星球
送出感谢: 11
接收感谢: 82
受教了
顺便问一下,如果同时有多个分区存在grldr和menu.lst文件会发生什么事? :lol:


_________________
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-09-18 17:34 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
学习了


_________________
关注我的blog: ε==3


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-09-18 18:15 
头像

注册: 2005-08-01 9:14
帖子: 3666
送出感谢: 0 次
接收感谢: 0 次
:D


_________________
Gedanken ohne Inhalt sind leer .Anschauungen ohne Begriffe sind blind.


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-09-18 18:15 
头像

注册: 2006-09-19 18:16
帖子: 3711
送出感谢: 0 次
接收感谢: 3
adagio 写道:
受教了
顺便问一下,如果同时有多个分区存在grldr和menu.lst文件会发生什么事? :lol:


取第一个呗


_________________
Ubuntu 系统备份、恢复、克隆、批量部署、制作 live 系统


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-09-18 22:01 
头像

注册: 2008-07-14 22:42
帖子: 8078
地址: Beijing
送出感谢: 0 次
接收感谢: 0 次
mark一下 :cry:


_________________
Ubuntu User


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-09-18 23:15 
头像

注册: 2007-09-29 3:09
帖子: 5773
送出感谢: 0 次
接收感谢: 3
学习了


_________________
HUNT Unfortunately No Talent...


页首
 用户资料  
 
8 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-09-21 20:53 
头像

注册: 2007-11-04 16:32
帖子: 779
送出感谢: 0 次
接收感谢: 0 次
map --mem 和map 有什么不同,前者能取代后者吗


_________________
amd x2 250
amd 785g主板
2g ddr3 1333内存


页首
 用户资料  
 
9 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-09-21 21:20 
头像

注册: 2008-07-14 22:42
帖子: 8078
地址: Beijing
送出感谢: 0 次
接收感谢: 0 次
这个简介还真是不错。。。看看百度百科上怎么样 :lol:


_________________
Ubuntu User


页首
 用户资料  
 
10 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-09-21 21:25 
头像

注册: 2007-12-31 14:57
帖子: 1097
送出感谢: 0 次
接收感谢: 1
噢,屁踢动真格了 :em38


页首
 用户资料  
 
11 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-10-18 11:36 
头像

注册: 2008-07-30 23:21
帖子: 13227
地址: freebuilder@yeah.net
系统: Debian stable AMD64
送出感谢: 36
接收感谢: 121
DOS 找不到硬盘,no Windows,怎么启动 grub for dos ?


_________________
(2015-11-16 更新)适合 WM 的截图脚本
(2015-08-24 更新)Debian、Ubuntu 源列表说明
(2013-02-01 首发)文字如何绘出
▷▷ 【更 多 在 此】 ◁◁
箪食瓢饮随遇安,不求栋梁求参天。
【初韵】一门牛逼的编程语言。


页首
 用户资料  
 
12 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-10-18 22:18 
头像

注册: 2007-11-04 16:32
帖子: 779
送出感谢: 0 次
接收感谢: 0 次
说到grub4dos可以自动搜索硬盘里边的menu。lst?是之搜索跟,目录吗?
我不再c盘重写menu.lst.他会自动去我的ubuntu盘符的/boot/grub/目录去找我的menu文件马?


_________________
amd x2 250
amd 785g主板
2g ddr3 1333内存


页首
 用户资料  
 
13 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-10-18 22:25 
头像

注册: 2008-07-30 23:21
帖子: 13227
地址: freebuilder@yeah.net
系统: Debian stable AMD64
送出感谢: 36
接收感谢: 121
好像是搜索 / /grub /boot /boot/grub 这四个目录,要是所有子目录都搜,在 web 服务器上 :em04


_________________
(2015-11-16 更新)适合 WM 的截图脚本
(2015-08-24 更新)Debian、Ubuntu 源列表说明
(2013-02-01 首发)文字如何绘出
▷▷ 【更 多 在 此】 ◁◁
箪食瓢饮随遇安,不求栋梁求参天。
【初韵】一门牛逼的编程语言。


页首
 用户资料  
 
14 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-10-28 9:31 

注册: 2008-10-27 9:38
帖子: 146
送出感谢: 0 次
接收感谢: 0 次
我果然望文生义,选了wingrub,而不是grub4dos。 :em06


页首
 用户资料  
 
15 楼 
 文章标题 : Re: GRUB4DOS 简介
帖子发表于 : 2008-10-28 14:14 
头像

注册: 2008-07-21 9:44
帖子: 2371
地址: 深圳
送出感谢: 0 次
接收感谢: 0 次
mark :em11


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 39 篇帖子 ]  前往页数 1, 2, 3  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译