一、MBR和UEFI启动引导区别
1.1、MBR :
也就是主引导记录,位于硬盘的 0 磁道、0 柱面、1 扇区中,主要记录了启动引导程序和磁盘的分区表,MBR 共占用了一个扇区,也就是 512 Byte,其中 446 Byte 安装了启动引导程序,其后 64 Byte 描述分区表,最后的 2 Byte 是结束标记。
安装不同的操作系统,MBR的主引导记录和PBR(系统分区)分区引导程序也会随之改变,并且MBR与PBR关系必须匹配对应,比如MBR主引导记录为windows 5.x/6.x,那么PBR分区引导记录就要写入bootmgr引导程序,否则即便系统分区中存在bootmgr文件,也会提示bootmgr is missing。可使用bootice工具查看编辑。
实际使用中加长扇区能使主引导程序中包含启动引导菜单。启动过程:主启动引导菜单---->系统引导菜单----->进入系统。
MBR常见的主引导记录程序有:GRUB4dos(grldr.mbr)、GRUB2.0(boot.img+core.img)、windows NT5.x/6.x(ntldr/bootmgr)、xorboot(第三方主引导)、MBROStool(第三方主引导)、MS-Dos(io.sys)等
1.2、UEFI:
UEFI弥补了MBR的缺陷,主引导esp分区可以自由大小,并将启动引导程序与系统独立开来,更加安全。
二、linux、苹果等系统启动过程
2.1、UEFI
启动方式UEFI→GRUB2菜单→(esp分区)→系统启动引导GRUB2→内核
2.2、MBR
启动方式MBR→MBR主引导记录(GRUB中的一段程序)→“活动的主分区”→GRUB→内核
三、Windows启动过程文件调用情况
3.1、UEFI
启动方式UEFI→Windows Boot Manager→(esp分区)
→\efi\Microsoft\boot\bootmgfw.efi(\EFI\boot\bootx64.efi)→efi\Microsoft\boot\BCD→\Windows\system32\winload.efi
3.2、Legacy BIOS
- windows7及以上版本
启动方式LegacyBIOS→MBR主引导记录(NT6.x)→“活动的主分区”→\bootmgr→\Boot\BCD→\Windows\system32\winload.exe
- windows NT(为Windows XP和Windows Server 2003及以下版)
启动方式LegacyBIOS→MBR主引导记录(NT5.x)→“活动的主分区”→\ntldr→\Boot.ini→\Windows\system32\Ntoskrnl.exe
四、多系统启动菜单编制
4.1、加长起始扇区能使MBR的启动主引导程序设计包含主启动引导菜单(使用bootice、xorboot、MS-dos命令(fdisk /mbr)等工具编辑),由主启动引导菜单选择系统启动菜单。UEFI启动主引导菜单在efi分区。
4.2、Linux、苹果、PE等系统启动菜单在GRUB、GRUB2引导程序中配置。
4.3、Windows 7+系统启动菜单在BCD(xp在boot.ini)。
4.4、多系统菜单设计
第一种:主启动引导菜单---->系统启动菜单,比如安装配置mbrostool、xorboot、GRUB作为主启动菜单选择引导Windows/linux系统的启动菜单,但如果没有匹配、兼容性强的主启动引导菜单,那么无法引导其他系统。
第二种:系统启动菜单添加其他系统启动菜单,比如PE、windows启动菜单(BCD)添加linux等
五、xorboot图形化多系统的主引导程序,将PE、dos工具独立在非系统分区,更安全。
xorboot相对于其它引导程序有如下优势:
- 软件很小才2M左右,设置简单,一步到位,对作用的部位很清晰。
- 软件可以在PE、windows里运行,并且可以直接空盘分区做出个性的引导菜单,也可安装系统后再用软件作为主引导,将系统添加到xorboot菜单。
- 最重要的是xorboot支持的启动类型非常丰富,如下
xorboot_UEFI版本可以管理多达 32 个系统的启动,可直接启动 常规 .EFI 文件;Windows NT 6.x VHD/VHDX/WIM;Linux 系统grub2;ISO 、IMG镜像文件等类型。
xorboot_BIOS版本支持的启动类型有 GRLDR/GRLDR.MBR、NTLDR / SETUPLDR.BIN / BOOTMGR、SYSLINUX 的 LDLINUX.BIN/ISOLINUX.BIN(3.00~6.02)、PLoP Boot Manager、MS-DOS(IO.SYS)、FreeDOS(KERNEL.SYS)以及磁盘映像文件(IMG; IMA; ISO; VHD/VHDX(MS NT 6x); WIM(MS NT5x/6x); VHD/VMDK(VBOOT驱动); Windows NT5X PE(IMG/ISO/WIM))的启动
- 如果使用图片背景,则背景图片应放在菜单文件同一文件夹下面(如\EFI\xorboot\black.bmp),背景图片仅支持 BMP 和 PNG 格式。
5.1、UEFI+GPT启动方式
5.1.1、先安装系统如windows、linux、mac等,略。建议使用PE先分区,且efi分区预留在1~2G最好。
5.1.2、设置xorboot作为主引导。进入PE或windows内,运行xorboot_UEFI软件,在efi分区(若看不到efi,在电脑-管理-磁盘-efi分区给分配驱动符就显示了)中建立xorboot文件夹(注意名字与路径是固定的 /EFI/xorboot/),
将xorboot64.efi导出到上面新建文件夹,
结果如下,
点击“保存当前启动项设置”,会有成功的提示。
5.1.3、编制xorboot启动菜单内容。如图新建菜单---启动菜单
这里是windows10的设置,
第二项pe是个ISO文件,这里是efi分区根目录(其实放在非efi分区也可以的,路径明确就行)。注意:在文本菜单中最好写英文,出现过因汉字引导不成功的bug。
最后在xorboot文件夹的文件
启动测试结果
5.2、MBR+BIOS启动方式
5.2.1、与UEFI区别是MBR没有efi分区,由硬盘第1个扇区作为主引导,而xorboot_BIOS软件将引导程序从第1个扇区开始连续写入,所以xorboot设置个性菜单时,大小不能超过第一分区(C分区)的起始扇区,所以分区时可以适当预留头部的空间大小。
5.2.2、第1项启动windows7
方法一:启动方式“从分区引导扇区启动”,之后选择引导的分区(也就是活动分区)。
方法二:启动方式为“从指定文件启动”,文件名为bootmgr,这个文件放在根目录,之后选择文件所在的磁盘分区,在选择系统类型。
注意1、文件名必须包含扩展名,且不用加 “\文件名”,格式要对。
注意2、文件所在的分区要选对。
5.2.3、第2项PE是iso文件,注意格式同上。
最后点“另存为”---“部署到硬盘MBR”(注意选对系统的硬盘)----“完成部署”,之后提示成功。
5.3、以上演示PE时存放位置时随便的,是为了说明软件的功能,但在平常的系统安装中一定要存放在隐藏、安全的分区如efi,系统保留分区等位置。