分页: 1 / 1

MBR和boot.ini

发表于 : 2008-09-16 10:43
jwnjuse
我想问下这两者之间是什么关系,一般bios不是直接转到mbr块吗?是不是mbr就是boot.ini文件?

发表于 : 2008-09-16 11:24
adagio
当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini

发表于 : 2008-09-16 11:29
jwnjuse
adagio 写了:当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini
谢谢,还有几个问题想请教一下,ntldr是什么东西啊?还有boot.ini这个启动文件是不是属于windows的?是不是还有和他一样的其他种类的启动文件?我看boot.ini的内容,这个文件在使用时应该要被解释的,那他是被谁解释的呢?谢谢了。

发表于 : 2008-09-16 11:33
poet
jwnjuse 写了:
adagio 写了:当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini
谢谢,还有几个问题想请教一下,ntldr是什么东西啊?还有boot.ini这个启动文件是不是属于windows的?是不是还有和他一样的其他种类的启动文件?我看boot.ini的内容,这个文件在使用时应该要被解释的,那他是被谁解释的呢?谢谢了。
你类比一下就明白了嘛!

XP: bios->mbr->ntldr->boot.ini
Linux: bios->mbt->grldr->menu.lst

ntldr 就是 grub 的 角色。

发表于 : 2008-09-17 17:20
ptptptptptpt
poet 写了: XP: bios->mbr->ntldr->boot.ini
Linux: bios->mbt->grldr->menu.lst

ntldr 就是 grub 的 角色。
mbt? 笔误??

Linux可以有好几种:

bios->mbr(stage1)-> stage 1.5 -> stage2 -> menu.lst

bios->mbr(grub4dos引导代码) -> grldr -> menu.lst

bios->mbr->ntldr->boot.ini -> grldr.mbr (grub4dos引导代码) -> grldr -> menu.lst

发表于 : 2008-09-17 17:36
stlxv
jwnjuse 写了:
adagio 写了:当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini
谢谢,还有几个问题想请教一下,ntldr是什么东西啊?还有boot.ini这个启动文件是不是属于windows的?是不是还有和他一样的其他种类的启动文件?我看boot.ini的内容,这个文件在使用时应该要被解释的,那他是被谁解释的呢?谢谢了。
大致如adagio所说。不过记住boot.ini只是个配置文件,像menu.lst一样是说明在哪个分区可以启动什么。
ntldr是属于Windows的,功能和grub一样,ntldr执行完了你选择哪个操作系统它就从哪里启动。

发表于 : 2008-09-17 17:57
muzuiget
但ntldr跟grldr功能上不是一个档次的。

发表于 : 2008-09-17 20:28
billbear
ptptptptptpt 写了:
poet 写了: XP: bios->mbr->ntldr->boot.ini
Linux: bios->mbt->grldr->menu.lst

ntldr 就是 grub 的 角色。
mbt? 笔误??

Linux可以有好几种:

bios->mbr(stage1)-> stage 1.5 -> stage2 -> menu.lst

bios->mbr(grub4dos引导代码) -> grldr -> menu.lst

bios->mbr->ntldr->boot.ini -> grldr.mbr (grub4dos引导代码) -> grldr -> menu.lst
还有

bios->m$式的mbr->活动linux主分区引导扇区里的 stage1->stage1.5->stage2->menu.lst

Re: MBR和boot.ini

发表于 : 2008-09-17 20:41
billbear
jwnjuse 写了:我想问下这两者之间是什么关系,一般bios不是直接转到mbr块吗?是不是mbr就是boot.ini文件?
据我的理解,m$ 的 mbr 就是执行一个简单操作,找到活动的主分区,然后转入它的分区引导扇区去执行引导代码,对于 2000/xp,分区引导扇区里的引导代码是 ntldr 式的,他的功能,好像也是简单地找到该分区下的 ntldr 文件。然后 ntldr 会寻找 boot.ini 文本,并根据里面的配置来引导。

Re: MBR和boot.ini

发表于 : 2008-09-17 20:59
ptptptptptpt
billbear 写了:
jwnjuse 写了:我想问下这两者之间是什么关系,一般bios不是直接转到mbr块吗?是不是mbr就是boot.ini文件?
据我的理解,m$ 的 mbr 就是执行一个简单操作,找到活动的主分区,然后转入它的分区引导扇区去执行引导代码,对于 2000/xp,分区引导扇区里的引导代码是 ntldr 式的,他的功能,好像也是简单地找到该分区下的 ntldr 文件。然后 ntldr 会寻找 boot.ini 文本,并根据里面的配置来引导。
我也这么想。

不过这个
bios->m$式的mbr->活动linux主分区引导扇区里的 stage1->stage1.5->stage2->menu.lst
我不太确定有没有 stage1,可能活动linux主分区引导扇区里直接就是 stage1.5 ,并且我有些怀疑这种方案对 linux 各种文件系统格式分区是否都适用——据说有的文件系统保留的引导扇区不够多,另外不知道m$的mbr会加载几个扇区

发表于 : 2008-09-17 20:59
adagio
billbear 写了: 还有

bios->m$式的mbr->活动linux主分区引导扇区里的 stage1->stage1.5->stage2->menu.lst
bios->m$式的mbr->GNU Grub???
这个、这个是那种方式? :shock:

发表于 : 2008-09-17 21:36
billbear
adagio 写了:
billbear 写了: 还有

bios->m$式的mbr->活动linux主分区引导扇区里的 stage1->stage1.5->stage2->menu.lst
bios->m$式的mbr->GNU Grub???
这个、这个是那种方式? :shock:
就是给 linux 留一个主分区,安装grub时选择安装在这个分区的引导扇区。安装完激活linux主分区。mbr还是m$的。这就可以启动了。而且grub可以再启动 win。
我较偏爱这种方式。因为我更愿意 mbr 是 m$ 式的, m$ 的 mbr 很单纯,就是找活动主分区,找到的是 win 他就起 win,找到 lin 就起 lin。而真正的引导代码在分区引导扇区里,我觉得这样各OS之间才比较独立,你可以随时重装任何一个,不需要修复什么东西,最多就是安装程序把活动分区改了,而在所有 OS 里面都可以很方便地把活动分区改回来。
话说如果给每个 OS 一个主分区,这些 OS 之间就很容易相互独立。比如 vista 和 xp 以这种方式就可以无所谓安装的先后顺序。你可以先装 vista ,然后弄另一个主分区来装 xp,注意在安装之前先把这个新的主分区置为活动。以后要启动哪一个,就激活哪一个,这当然有点麻烦--解决办法是默认激活 xp,在 xp 底下用 grldr 和 menu.lst 来引导 vista--当然如果是 3 系统,默认激活 linux,就用 grub 就很简单地引导 xp/vista 了。
我有一阵子装 3 系统 就把主分区用光了 :)

发表于 : 2008-09-17 21:57
adagio
:shock: :shock:
第一次听说还有这个搞法,找个机会试试

不过好像vista的MBR引导代码不同于XP的啊?还是一样的?
记得引导vista要执行一下“bootsect /nt60 c:”才行,而引导XP以下的系统要“bootsect /nt52 c:”
这个莫非只是写入到分区引导信息吗?

发表于 : 2008-09-17 22:05
billbear
adagio 写了::shock: :shock:
第一次听说还有这个搞法,找个机会试试

不过好像vista的MBR引导代码不同于XP的啊?还是一样的?
记得引导vista要执行一下“bootsect /nt60 c:”才行,而引导XP以下的系统要“bootsect /nt52 c:”
这个莫非只是写入到分区引导信息吗?
vista 和 xp 的 mbr 是一样的
如果 grub 覆盖了 vista 的 mbr,用 xp 的安装盘执行 fixmbr 是可以的
是的,那个只是写分区引导。

发表于 : 2008-09-17 23:09
自由建客