MBR和boot.ini

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
回复
jwnjuse
帖子: 2
注册时间: 2008-09-16 10:40

MBR和boot.ini

#1

帖子 jwnjuse » 2008-09-16 10:43

我想问下这两者之间是什么关系,一般bios不是直接转到mbr块吗?是不是mbr就是boot.ini文件?
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

#2

帖子 adagio » 2008-09-16 11:24

当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
jwnjuse
帖子: 2
注册时间: 2008-09-16 10:40

#3

帖子 jwnjuse » 2008-09-16 11:29

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

#4

帖子 poet » 2008-09-16 11:33

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 的 角色。
头像
ptptptptptpt
帖子: 3711
注册时间: 2006-09-19 18:16

#5

帖子 ptptptptptpt » 2008-09-17 17:20

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
头像
stlxv
论坛版主
帖子: 8275
注册时间: 2006-05-03 0:39
来自: المريخ

#6

帖子 stlxv » 2008-09-17 17:36

jwnjuse 写了:
adagio 写了:当然不是
XP启动顺序是:BIOS--->mbr--->ntldr--->boot.ini
谢谢,还有几个问题想请教一下,ntldr是什么东西啊?还有boot.ini这个启动文件是不是属于windows的?是不是还有和他一样的其他种类的启动文件?我看boot.ini的内容,这个文件在使用时应该要被解释的,那他是被谁解释的呢?谢谢了。
大致如adagio所说。不过记住boot.ini只是个配置文件,像menu.lst一样是说明在哪个分区可以启动什么。
ntldr是属于Windows的,功能和grub一样,ntldr执行完了你选择哪个操作系统它就从哪里启动。
PHP是最好的语言!不服来战!
头像
muzuiget
帖子: 1097
注册时间: 2007-12-31 14:57

#7

帖子 muzuiget » 2008-09-17 17:57

但ntldr跟grldr功能上不是一个档次的。
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

#8

帖子 billbear » 2008-09-17 20:28

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
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

Re: MBR和boot.ini

#9

帖子 billbear » 2008-09-17 20:41

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

Re: MBR和boot.ini

#10

帖子 ptptptptptpt » 2008-09-17 20:59

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会加载几个扇区
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

#11

帖子 adagio » 2008-09-17 20:59

billbear 写了: 还有

bios->m$式的mbr->活动linux主分区引导扇区里的 stage1->stage1.5->stage2->menu.lst
bios->m$式的mbr->GNU Grub???
这个、这个是那种方式? :shock:
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

#12

帖子 billbear » 2008-09-17 21:36

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 系统 就把主分区用光了 :)
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

#13

帖子 adagio » 2008-09-17 21:57

:shock: :shock:
第一次听说还有这个搞法,找个机会试试

不过好像vista的MBR引导代码不同于XP的啊?还是一样的?
记得引导vista要执行一下“bootsect /nt60 c:”才行,而引导XP以下的系统要“bootsect /nt52 c:”
这个莫非只是写入到分区引导信息吗?
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

#14

帖子 billbear » 2008-09-17 22:05

adagio 写了::shock: :shock:
第一次听说还有这个搞法,找个机会试试

不过好像vista的MBR引导代码不同于XP的啊?还是一样的?
记得引导vista要执行一下“bootsect /nt60 c:”才行,而引导XP以下的系统要“bootsect /nt52 c:”
这个莫非只是写入到分区引导信息吗?
vista 和 xp 的 mbr 是一样的
如果 grub 覆盖了 vista 的 mbr,用 xp 的安装盘执行 fixmbr 是可以的
是的,那个只是写分区引导。
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

#15

帖子 自由建客 » 2008-09-17 23:09

回复