无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 83811|回复: 168
打印 上一主题 下一主题

【原创】HDD模式U盘双重MBR系列之—— PloP Boot Manage + FBINST(多版本.11.6更新)

  [复制链接]
跳转到指定楼层
1#
发表于 2009-11-1 07:53:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
天涯海角1216注:这是本人学习MBR和分区启动以来探究最深入的一次,
                                恳请各位多提宝贵意见,谢谢!!!
本方法尤其适用于FBINST不能启动电脑的情况,可以用USB-HDD+或其他可以启动的方式启动后加载FBINST的MBR,即双重MBR(因为FBINST对引导文件的启动有很高的兼容性)。
1.MBR知识图:  硬盘主引导扇第一扇区(0柱面0磁头1扇区)






      硬盘的主引导扇区,分区表,分区引导扇区(MBR、DPT、DBR、BPB)是电脑BIOS自检完成后,操作系统开始引导系统前整个电脑运作过程中需要检查的重要参数,硬盘的主引导扇区,分区表,分区引导扇区(MBR、DPT、DBR、BPB)参数错误可能导致系统无法启动或存储的数据丢失,这片文章我们介绍一下硬盘的主引导扇区,分区表,分区引导扇区(MBR、DPT、DBR、BPB)的详细信息。
  硬盘的0柱面、0磁头、1扇区称为主引导扇区(也叫主引导记录MBR),该记录占用512个字节,它用于硬盘启动时将系统控制权转给用户指定的、在分区表中登记了某个操作系统分区。MBR的内容是在硬盘分区时由分区软件(如FDISK)写入该扇区的,MBR不属于任何一个操作系统,不随操作系统的不同而不同,即使不同,MBR也不会夹带操作系统的性质,具有公共引导的特性。但安装某些多重引导功能的软件或LINUX的LILO时有可能改写它;它先于所有的操作系统被调入内存并发挥作用,然后才将控制权交给活动主分区内的操作系统(上图)

天涯海角1216:特殊形式的MBR会占用多个扇区,如Lvyanan的1JF9占用2个扇区,GRUB的MBR占用18个扇区,FBINST占用63个扇区,PloP Boot Manage 占用62个扇区(总共63个扇区)




2.分区引导扇区知识:
   分区引导扇区DBR(DOS BOOT RECORD)是由FORMAT高级格式化命令写到该扇区的内容;DBR是由硬盘的MBR装载的程序段。DBR装入内存后,即开始执行该引导程序段,其主要功能是完成操作系统的自举并将控制权交给操作系统。每个分区都有引导扇区,但只有被设为活动分区的DBR才会被MBR装入内存运行。
DBR主要由下列几个部分组成:
 1.跳转指令,占用3个字节的跳转指令将跳转至引导代码。
 2.厂商标识和DOS版本号,该部分总共占用8个字节。
 3BPBBIOS Parameter Block BIOS 参数块)。
 4.操作系统引导程序。
 5.结束标志字,结束标志占用2个字节,其值为AA55
 DBR中的内容除了第5部分结束标志字固定不变之外,其余4个部分都是不确定的,其内容将随格式化所用的操作系统版本及硬盘的逻辑盘参数的变化而变化。
  一、FAT32的分区引导扇区
  为了使加载文件的操作更加灵活,加上FAT32文件系统采用"活动"FDT表,,同时考虑到引导程序的代码量和为今后发展保留适当的余量,FAT32文件系统分区引导扇区占据了6个扇区,只有前3个扇区作为系统的分区引导扇区,其余3个扇区保留暂未使用。分区引导扇区对于操作系统的启动和磁盘文件的访问具有至关重要的作用;引导程序代码的损坏将导致操作系统不能正常启动,磁盘读写参数的破坏将造成存储在磁盘上的文件不能正常读写。
  由于分区引导扇区的重要性,FAT32文件系统在在第一个分区引导扇区的6个扇区后的6个扇区里保留了分区引导扇区的备份,在启动时操作系统可以对两份引导扇区进行比较,以便选择正确的引导扇区来引导系统。由于在磁盘正常工作过程中系统不再对引导扇区的程序和数据进行修改,因此备份的分区引导扇区损坏的可能性非常小。
  分区引导扇区的第一个扇区(下图)的前三个字节是一条跳转指令,然后是8个字节长的OEM ID(厂家标识)和版本号,其后是简称为BPBBIOS参数块(BIOS Parameter Block)。







    分区引导扇区的第2个扇区作为文件系统相关参数存储标识扇区(下图),除了保存扇区的标识信息(RraA(00H)和rrAa(1E4H))外,还可能在偏移地址1E8H处存储了文件系统有关的信息。其中扇区偏移地址1E8H~1EBH的4个字节存储了逻辑磁盘中未使用的簇数,通常用于快速计算逻辑磁盘的剩余空间(典型的操作是在资源管理器状态栏上列出的"可用磁盘空间"参数),而1ECH~1EFH 4个字节给出了逻辑盘中下一个可以分配给文件使用的空闲簇的簇号,这样操作系统可以不访问FAT表就直接获得磁盘剩余空间和可以分配的簇号。



二、NTFS的分区引导扇区
  对于NTFS分区来说,分区引导扇区DBR只占用一个扇区(下图),并且在该分区的最后一个扇区做了备份;NTFS的引导扇区也是完成引导和定义分区参数,NTFS分区的引导扇区不是分区的充分条件,它要求必须MFT中的系统记录如$MFT等正常该分区才能正常访问




BPB参数如下表所示:






3.  PloP Boot Manage + FBINST双重MBR的方法:


1.  建立好FBINST启动U盘,用WINHEX.EXE将FBINST的MBR部分第一扇区偏移00处的EB5E写入可见分区启动扇区第一扇区偏移00处。

2.  用WINHEX.EXE将FBINST的MBR部分第一扇区偏移60开始到该扇区结束部分写入到可见分区启动扇区第一扇区偏移60处(要对应)

3.  而后再用Pauly的BOOTICE建立PloP Boot Manage的MBR

4.  再用WINHEX.EXE将FBINST的MBR从偏移B0处开始到该扇区结束部分写入到MBR的第一扇区偏移B0处(PloP Boot Manage在该处恰好空白)。(第4步也可以:将可见分区第一扇区偏移73处的B90100修改为B90200,将MBR第二扇区偏移73处的B90100修改为B90200。)

5.  启动该可见分区时即可成功启动PloP Boot Manage+FBINST的启动方式!
大家可以一试!


(注意:1.先备份U盘数据.  2.修改后不要再用FbinstTool修改U盘文件,否则出错。3.用FBINST的菜单比较好!)

恳请各位交流讨论,谢谢!

4.制作示例:
(1)FBINST的MBR部分:
解释:FBINST 在MBR的每个扇区(前63扇区)都写入了引导代码,并在每个扇区记录扇区号,这样无论U盘被识别为何种格式,都可以正常启动,启动的时候需要在1~63扇区读取计算好的信息,PloP Boot Manager 5.0.4 也类似,所以PloP Boot Manager 5.0.4 +FBINST总共占用63个扇区。



(2)FBINST的分区启动扇区:

解释:可见分区FBINST启动扇区偏移00处的EB5E是跳转指令,EB5E即为跳转到偏移60处,即分区启动扇区上的FBINST的MBR处!
可见分区启动扇区里写入FBINST的MBR内容,启动该可见分区时调用FBINST的MBR,从而指向UD区的FBINST菜单。
顺序为PloP Boot Manage>可见分区启动扇区(第一扇区DBR)>FBINST.
所以一个扇区足够了!





5.其他版本双重MBR

  根据实践:实现的双重MBR有:
GRUB+FBINST  ,    USB HDD++FBINST  ,普通NT5,6 +FBINST ,同下面的方法!同样适用于多分区U盘。

  这种方式也还可以使启动选择过程中返回FBINST菜单!

HDD+ + FBINST 双重MBR

1.  建立好FBINST启动U盘,用WINHEX.EXE将FBINST的MBR部分第一扇区偏移00处的EB5E写入可见分区启动扇区第一扇区偏移00处。

2.  用WINHEX.EXE将FBINST的MBR部分第一扇区偏移60开始到该扇区结束部分写入到可见分区启动扇区第一扇区偏移60处(要对应)

3.  而后再用Pauly的BOOTICE建立HDD+的MBR

4.  将可见分区第一扇区偏移73处的B90100修改为B90200,将MBR第二扇区偏移73处的B90100修改为B90200。

5.  启动该可见分区时即可成功启动HDD++FBINST的启动方式!


6.范例参考:

做好的MBR和启动扇区,大家看一下!


PloP Boot Manager 5.0.4 +FBINST.rar (28.04 KB, 下载次数: 1597)        分区FBINST启动扇区.rar (555 Bytes, 下载次数: 1116)

7.工具下载:
WINHEX14.1.part1.rar (390.63 KB, 下载次数: 1870)          WINHEX14.1.part2.rar (350.41 KB, 下载次数: 1822)

惠普U盘格式化工具HPUSBFW.rar (33.29 KB, 下载次数: 1166)
8.建议:
        建议大家不妨一试,备份好U盘数据即可(其实硬盘也可以制作)。反正是U盘,多大点事,又不会搞坏掉的,万一出现问题,用惠普的格式化工具格式化即可,培养动手和学习知识是很重要的。
       我觉得在无忧我个人学到了不少的知识(我09年1月注册的,主要是无忧高手如云,无忧有非常好的学习交流环境,才有我学习进步的土壤,一直以来主要得到 Lvyanan Pauly 两位大师的点拨和帮助,在这里一并感谢,同时也感谢其他默默提供帮助的各位坛友!同时也感谢默默奉献的各位版主,向你们道一声:辛苦了!),我很喜欢动手,喜欢发挥想象。
       我很欣赏牛顿的话“没有大胆的猜测,就没有伟大的发现

9.发挥联想:
    还有个不现实的想法:
    本人又在探索能否将FBINST的菜单启动方式移植到分区里启动,把所谓的非分区空间(UD)放到分区里启动,因为FBINST直接启动SYSLINUX , NTLDR , BOOTMGR , 时空淘气包等的效果好(不是通过G4D加载)!
    也就是说:增加保留扇区到20M,存放必需的基本引导文件,启动该分区时,即可启动保留扇区里各种系统的引导文件,因为FBINST启动SYSLINUX等都有很好的兼容性!
    这样,分区保留扇区就成了一个完整的启动文件库,不怕格式化该分区或病毒侵扰了!


10.操作视频下载:
      注意:先制作好FBINST的U盘后再用WINHEX进行视频上的操作,若想制作成HDD+  + FBINST的双重MBR,只需将视频中的plpbt-5.0.4用BOOTICE替换为HDD+即可!

FBINST+plpbt-5.0.4.part01.rar (390.63 KB, 下载次数: 3632)    FBINST+plpbt-5.0.4.part02.rar (390.63 KB, 下载次数: 4502)    FBINST+plpbt-5.0.4.part03.rar (104.28 KB, 下载次数: 1683)

[ 本帖最后由 天涯海角1216 于 2009-11-8 18:04 编辑 ]

评分

参与人数 4无忧币 +26 收起 理由
cbd448421049 + 5 很给力!
古今一梦 + 1 很给力!
ZXQ99925 + 10 好帖子! 好技术!
lvyanan + 10

查看全部评分

2#
 楼主| 发表于 2009-11-1 08:17:23 | 只看该作者
这是通过分区启动扇区启动FBINST的,分区启动扇区与FBINST的MBR有惊人的相似,所以可以装入FBINST启动之!

附:增加分区保留扇区数的方法.

以FAT32格式为例:
1.格式化U盘为FAT32.
2.用WINHEX打开U盘分区,打开启动扇区模板,找到FAT1,复制到剪贴板(就第一行)。
3.改变FAT1扇区位置,我的U盘是FAT32,FAT1在38扇区,我增加至20038扇区,搜索到20038扇区,剪贴板数据写入.(即增加了20000个扇区)
4.再找到新的FAT2位置,20038+1941=21979扇区,剪贴板数据写入(这是与FAT1相同的备份)
5.保存,退出,完成!

注意:制作完成后不要再次格式化U盘或硬盘分区了,否则保留扇区又恢复至38个了!
保留扇区约增加了12M的空间,呵呵,可存点东西哦!

若增加其他扇区数的方法雷同!

不妥之处高手指正!!!

有时间弄个视频给大家!


[ 本帖最后由 天涯海角1216 于 2009-11-12 07:14 编辑 ]
回复

使用道具 举报

3#
发表于 2009-11-1 09:46:48 | 只看该作者
楼主一早就分享如此好的东西,谢谢!
弄个视频效果出来如何?

[ 本帖最后由 tdq868xin 于 2009-11-1 09:48 编辑 ]
回复

使用道具 举报

4#
发表于 2009-11-1 09:52:42 | 只看该作者
楼主真牛,赞一个。不过对菜菜们望而怯步。
回复

使用道具 举报

5#
 楼主| 发表于 2009-11-1 15:29:16 | 只看该作者
有新内容:
根据实践:
实现的双重MBR有:
GRUB+FBINST  ,    USB HDD+  +FBINST  ,普通NT5,6 +FBINST  ,用上述4的第二种方法!
回复

使用道具 举报

6#
发表于 2009-11-1 16:20:54 | 只看该作者
LZ很不错了,钻研得很深,支持一下。
回复

使用道具 举报

7#
发表于 2009-11-1 16:23:49 | 只看该作者
楼主真牛,支持一下。
回复

使用道具 举报

8#
发表于 2009-11-1 18:44:35 | 只看该作者
感谢分享,特来支持一下!
回复

使用道具 举报

9#
发表于 2009-11-1 21:12:16 | 只看该作者
太厉害了!请教楼主,这样改了能不能USB1.1的优盘,改成2。0的,感觉有希望。
回复

使用道具 举报

10#
 楼主| 发表于 2009-11-1 21:32:38 | 只看该作者
原帖由 cmdy268 于 2009-11-1 21:12 发表
太厉害了!请教楼主,这样改了能不能USB1.1的优盘,改成2。0的,感觉有希望。

不可能吧,1.1与2.0取决于U盘主控的速度,
回复

使用道具 举报

11#
发表于 2009-11-1 21:47:54 | 只看该作者
虽然不太懂,但还是深入学习。。。。。。。。。。
回复

使用道具 举报

12#
发表于 2009-11-2 06:31:02 | 只看该作者
看样子楼主又要有大作出现了!
总是哪么牛B.
思路独特,敢说敢做!
佩服,支持!!!!
回复

使用道具 举报

13#
发表于 2009-11-2 10:08:11 | 只看该作者
希望可以做个详细点的图文(最好有动画),我是菜鸟呀...看不懂哪个移去哪个Offset...
还有,如果是U盘分了两个区的,Fbinst启动写入在第二个分区,也能这样做吗?会不会影响第一分区的内容?
回复

使用道具 举报

14#
 楼主| 发表于 2009-11-2 10:34:36 | 只看该作者

回复 #14 codemoon 的帖子

可以用第二分区启动FBINST,因为分区启动扇区相当于读入MBR的内容启动之,更不会影响第一分区的内容!
回复

使用道具 举报

15#
发表于 2009-11-2 12:02:54 | 只看该作者
支持下。虽然不懂,但是我一定会努力的
回复

使用道具 举报

16#
 楼主| 发表于 2009-11-2 20:05:09 | 只看该作者
其实这也就是通过分区启动扇区引导MBR的,本人认为这种方法比较巧妙,适合多重引导,我遇到过FBINST无法启动的电脑,用HDD+却可以启动,所以这种方法对特别的主板很奏效的!
也恳请各位讨论交流!
谢谢!!!
回复

使用道具 举报

17#
发表于 2009-11-2 22:04:25 | 只看该作者
很巧妙的方法,有时间的话研究下,确实存在fbinst启动不了,而用hdd+或uboot制作后能成功的情况,如果利用这样的双重MBR那可以很好的互补fbinst的不足。
回复

使用道具 举报

18#
发表于 2009-11-2 22:10:33 | 只看该作者
没有可实验的环境,只能精神上支持楼主了。
回复

使用道具 举报

19#
发表于 2009-11-3 01:30:42 | 只看该作者
感谢分享,但对”方法“的第4:

4.  再用WINHEX.EXE将FBINST的MBR从偏移B0处开始到该扇区结束部分写入到MBR的第一扇区偏移B0处(PloP Boot Manage在该处恰好空白)。(第4步也可以:将分区第一扇区偏移73处的B90100修改为B90200,将MBR第二扇区偏移73处的B90100修改为B90200。)

还是不太理解,请教楼主:
一、“......写入到MBR的第一扇区偏移B0处(....)”
      这个MBR是什么?和前面的“FBINST的MBR”不应是同一个吧?
MBR只有一个扇区,这里“写入到第一扇区偏移B0处”什么意思?
这个MBR是否是“分区启动扇区"的笔误??

二、括号内的和前面括号外说的是等效的吗?偏移73和偏移B0有何关系?  "MBR第二扇区"是什么意思??

最好给个图说明一下!!谢谢!!!

三、顶楼的二个附件:
做好的MR:     PloP Boot Manager 5.0.4 +FBINST.rar,解压缩后,扩展名.MBR,32K大?
做好的启动扇区:  分区FBINST启动扇区.rar ,解压缩后,无扩展名,512字节大?

MBR大小是1个扇区512字节,分区启动扇区大小是6个扇区3K,所以对这二个附件的大小不太理解?
也不知道如何查看和使用?也请LZ说明一下!!谢谢!!!

[ 本帖最后由 zqywult 于 2009-11-3 02:55 编辑 ]
回复

使用道具 举报

20#
 楼主| 发表于 2009-11-3 05:17:30 | 只看该作者

回复 #20 zqywult 的帖子

回答:
对一:FBINST 在MBR的每个扇区(前63扇区)都写入了引导代码,并在每个扇区记录扇区号,这样无论U盘被识别为何种格式,都可以正常启动,启动的时候需要在1~63扇区读取计算好的信息,所以FBINST的MBR包含63个扇区,你制作个FBINST方式的U盘看看就知道了。
对二:括号内的和前面括号外说的是等效!“偏移73和偏移B0有何关系?”73处是指向的扇区位置代码。也就是写B90200的话(B90200 意思是:指向0磁道2扇区),就不要再写到B0处了,这2步是并列关系!
对三:PloP Boot Manager 5.0.4 +FBINST总共占用63个扇区,当然31.5K了。 分区FBINST启动扇区是导入跳转指令,启动后跳转到MBR上了!所以一个扇区足够了!

[ 本帖最后由 天涯海角1216 于 2009-11-3 05:25 编辑 ]
回复

使用道具 举报

21#
发表于 2009-11-3 06:14:38 | 只看该作者
LZ解释的很详细,可能菜菜们不大懂。
试验了一下,真的可以,使用效果不错!
有PloP Boot Manager ,又有FBINST,不错不错!
技术帖!

建议加精!!!
回复

使用道具 举报

22#
发表于 2009-11-3 07:21:15 | 只看该作者
我试了,很不错的效果!
楼主思维不错!

支持支持!!!
回复

使用道具 举报

23#
发表于 2009-11-3 07:31:27 | 只看该作者
的确建议大家可以一试!
要仔细一点!
回复

使用道具 举报

24#
发表于 2009-11-3 12:13:14 | 只看该作者
也就是说:分区启动扇区也能引导FBINST??分区启动扇区的作用太大了哦。
那么先后顺序呢???
谢谢!!
回复

使用道具 举报

25#
 楼主| 发表于 2009-11-3 16:19:24 | 只看该作者
原帖由 TOSHIBA 于 2009-11-3 12:13 发表
也就是说:分区启动扇区也能引导FBINST??分区启动扇区的作用太大了哦。
那么先后顺序呢???
谢谢!!



是的!
分区启动扇区里写入FBINST的MBR内容,启动该分区时调用FBINST的MBR,从而指向UD区的FBINST菜单。
顺序为PloP Boot Manage>分区启动扇区(第一扇区DBR)>FBINST。
回复

使用道具 举报

26#
发表于 2009-11-3 17:16:02 | 只看该作者
好帖!
把MBR和分区启动扇区的知识写的很好!
而且MBR与分区启动扇区结合的应用非常好!赞一个!
分区启动扇区的应用使我深受启发!
谢谢!

强烈建议加精!!!
回复

使用道具 举报

27#
发表于 2009-11-3 17:22:29 | 只看该作者
天涯兄这方面做出经验啦来了 各种鬼点子~~
回复

使用道具 举报

28#
 楼主| 发表于 2009-11-3 20:43:37 | 只看该作者
原帖由 x.Nichdlas 于 2009-11-3 17:22 发表
天涯兄这方面做出经验啦来了 各种鬼点子~~


感谢支持!
没事探索一下,呵呵---
回复

使用道具 举报

29#
发表于 2009-11-4 01:44:17 | 只看该作者
原帖由 x.Nichdlas 于 2009-11-3 17:22 发表
天涯兄这方面做出经验啦来了 各种鬼点子~~

天涯妞这方面做出经验啦来了 各种鬼点子~~
回复

使用道具 举报

30#
发表于 2009-11-4 13:50:19 | 只看该作者
楼主把分区启动扇区的作用挖掘的很好!
也就是说把分区启动扇区的调用个性化,以前只知道用工具改编分区扇区,也不知道分区扇区里面藏了一个大秘密!
谢谢!

建议加点味精!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-25 16:31

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表