UEFI引导MBR磁盘上的windows系统

首先,看一下计算机的启动过程:

        Legacy BIOS启动(传统BIOS):

        启动盘 → ootmgr → ootBCD →  …oot.wim
        UEFI BIOS启动:

       启动盘 →ootmgr.efi → efiootootx64.efi  →  efimicrosoftootBCD → …oot.wim

       “启动盘”可以是光盘、U盘、硬盘甚至SD卡等任何可以引导计算机的介质。对比看下,注意不同的引导文件。

 

       以下分两个方面说:

       此方法适用于64位vista/win7/win8,以及32位win8 (32位win8必须是要求主板是32位UEFI)。

        一、为已有的mbr+bios启动的NT 6.x添加UEFI启动

        如果你现在已有MBR+BIOS方式启动的vista/win7/win8,并且主板支持uefi启动的话,可以直接添加UEFI启动,而不需要转换成GPT分区,也不用重装系统。分两种情况:
        1、如果你的boot文件夹和windows文件夹在同一个分区,请调整分区,另外创建一个1G一下容量的FAT16/32主分区,并激活之,假设此分区盘盘符为d:,然后用win8的bcdboot添加启动文件

         命令:bcdboot c:windows /f all /s d: /l zh-cn

        2、如果你使用了win7/win8默认方式安装,则boot文件夹会在独立的一个激活的ntfs分区中,先用diskgenius或者其他第三方工具把此分区格式化成FAT16/32格式(windows自带工具会拒绝格式化此分区),并分配盘符,假设为d:,再用win8的bcdboot执行前面提到的命令。
        二、在MBR硬盘上安装UEFI+bios双模式启动的系统

        在winpe下分两个分区,一个FAT分区,建议1G容量,并激活之;一个ntfs分区容量大于10G。然后用imagex或其他解压方式安装系统,其中ntfs分区为系统所在分区,FAT分区为启动文件所在分区。然后用bios模式启动完成正常安装过程(win 8.1支持直接在MBR硬盘上以UEFI启动完成安装,而不再需要bios),等系统安装完毕之后,进入系统,用win8的bcdboot执行前面的命令(依旧假设FAT分区盘符为d:)。

 

         以上两种情况完成后bios模式能直接正常启动系统,uefi启动一般也能自动执行激活主分区中的efiootootx64.efi或者EFIMicrosoftBootootmgfw.efi来启动windows。

         如果主板没能自动执行,还需要在主板的文件启动(boot from file)中手动选择那个FAT分区中的EFIMicrosoftBootootmgfw.efi作为启动文件,来添加到启动项中。

         如果主板既不能自动执行所提到的efi文件,又没有提供手动选择efi文件启动的功能,则需要用win8的启动光盘进入uefi启动的winpe中,然后再执行上面所提到的bcdboot命令,这样bcdboot会自动为主板设置中添加EFIMicrosoftBootootmgfw.efi启动项

        注意:mbr+uefi方式启动后,win7的bcdedit会无法识别bcd文件,可以用win8的bcdedit代替。
        最新试了一下win8.1,利用imagex解压install.wim到mbr硬盘,bcdboot生成启动菜单。win8.1可以直接在MBR硬盘上以UEFI启动完成安装,而不再需要bios启动完成安装(win7/win8在mbr硬盘上必须bios方式完成安装,否则报错)。

点赞
  1. 行业报告说道:

    第一次访问博主博客 感觉还不错 留言支持下

发表评论

电子邮件地址不会被公开。 必填项已用*标注