(win7 UEFI安装)顺便说说UEFI、GPT和Secure Boot

预装Windows 8的机器换装其他系统,顺便说说UEFIGPTSecure Boot

ref:http://bbs.51cto.com/thread-1067829-1-1.html

    新出的,预装 Windows 8 的机器,基本都是 UEFI+GPT 模式的, Windows XP Windows Server 2003 是不支持这种模式引导启动的,安装 Windows XP Windows Server 2003 需要改为 Legacy+MBR 模式引导启动。
    而且,预装 Windows 8 、基于 UEFI+GPT 模式的机器,是开启了安全启动( Secure Boot )功能的。那么,想给预装 Windows 8 、基于 UEFI+GPT 模式的机器换系统,必须关闭安全启动且改为 Legacy+MBR 模式(安装 Windows 7 仅关闭安全启动即可)。
UEFI+GPT模式的新机器换装其他系统所要做的修改:
    这里要先说说 CSM CSM 全名 Compatibility Support Module 即兼容性支持模块,是 UEFI 的一个特殊模块,对于不支持 UEFI 的系统提供兼容性支持。目前 Windows 8 完全支持 UEFI 64 位的 Windows 7 不完全支持 UEFI ,因此 UEFI BIOS 下安装 Windows 7 必须开启 CSM 。多数电脑能自动或手动开启,少数电脑则强制关闭 CSM
    预装 Windows 8 的品牌机都采用 UEFI BIOS ,下面以预装 Windows 8 品牌机安装 Windows 7 时的 BIOS 设置问题具体说一下:
如果在 UEFI BIOS 环境下,必须保证: 1 、操作系统支持 UEFI 2 、操作系统支持“安全启动”,否则需关闭“安全启动”。因此安装 Windows 7 的话必须: 1 Windows 7 64 位(满足条件 1 ); 2 、在 UEFI BIOS 中禁用“安全启动”(满足条件 2 )。
    注: UEFI 环境下 X64 架构电脑只能装 64 位系统, X86 架构电脑只能装 32 位系统。因此预装 Windows 8 64 位的品牌机( X64 架构、默认 UEFI BIOS )想换成 32 位的 Windows ,只能切换到 Legacy BIOS 模式!
    因为 Windows 7 不完全支持 UEFI ,装 Windows 7 不能把 BIOS 设置为 UEFI ,并且必须禁用 Secure Boot
    设置 EFI BIOS BootMode[UEFI/Legacy] ,设置为 UEFI
                  Launch CSM[Enabled/Disabled] ,设置为 Disabled
                  LaunchCSM[UEFI/Legacy] ,设置为 UEFI
                   (上述设置一般保持默认即可)

    设置兼容模式: CSM Support[Yes/No] ,设置为 Yes
                  OSOptimized Defaults[Enabled/Disabled] ,设置为 Disabled
                  OSOptimized Defaults[Win8 64bit/Others] ,设置为  Others 
                   (上述设置一般和默认相反)
    禁用安全启动: Secure Boot[Enabled/Disabled] ,设置为 Disabled
                   (上述设置一般和默认相反)

    有些电脑强制为 UEFI
则必须将 BIOS 设置为 Legacy 模式才能安装 Windows 7 ,当然这种情况下需要把硬盘重新分区并改为 MBR 分区方案
    设置 EFI BIOS BootMode[UEFI/Legacy] ,设置为  Legacy 
                  LaunchCSM[Enabled/Disabled] ,设置为  Enabled 
                  LaunchCSM[UEFI/Legacy] ,设置为  Legacy 
                   (上述设置一般和默认相反)
    设置兼容模式: CSM Support[Yes/No] ,设置为 Yes
                  OSOptimized Defaults[Enabled/Disabled] ,设置为 Disabled
                  OSOptimized Defaults[Win8 64bit/Others] ,设置为  Others 
                   (上述设置一般和默认相反或无需设置)

    禁用安全启动: Secure Boot[Enabled/Disabled] ,设置为 Disabled
                   (上述设置一般和默认相反或无需设置

    ——具体情况应具体分析,有的电脑将BIOS Mode[UEFI Only/Legacy Support]设置为 Legacy Support ,而把Boot Priority设置为UEFI First也表示“UEFI模式下开启了CSM”。我只安装过几台华硕、联想和ThinkPad,在其他预装Windows 8的电脑上成功安装了其他系统的朋友,欢迎共享你的BIOS设置,若你有其他的见解或发现上述设置中的Bug,欢迎相互交流。
GPT”和“MBR”相互转换:
    微软规定:必须“UEFI+GPT”或“Legacy+MBR!虽然在实验测试环境中“UEFI+MBR”仍可正常启动系统,但在生产环境中还是推荐以微软规定的方式进行安装,避免带来麻烦!微软做此限制必然不是平白无故的!
    使用我们常用的DiskGenius即可进行转换:


UEFI下安装Windows系统
    强烈建议使用 Windows 原版光盘安装系统,原版系统镜像包含有 UEFI 引导所必须的文件,而使用其他安装方式,需要手动提取原版光盘镜像相关文件。
    安装方式:
    1 、直接用微软原版光盘引导安装,这个不用多说,是最简单的办法,和平常的“ Legacy+MBR ”模式下的安装方式一样,安装程序会自动识别“ UEFI+GPT ”模式并调用相关引导所必须的文件,在界面及安装选项上没啥区别,在硬盘分区时,系统也会自动做出相应的分区。
    2 、用高版本的 UltraISO 将原版光盘镜像写入 U 盘安装,目前新版的 UltraISO 能够识别原版光盘镜像中 UEFI 引导所必须的文件并能将其写入 U 盘。
    3 、手动提取原版光盘镜像中 UEFI 引导所必须的文件到 U 盘安装,具体步骤:
    ( 1 )将 U 盘格式化成 FAT32 格式;
    ( 2 )在 U 盘建立文件夹 \boot ,拷入系统镜像相对应的 boot.sdi 文件;
    ( 3 )在 U 盘建立文件夹 \efi\microsoft\boot ,拷入系统镜像相对应的 bcd 文件,在 U 盘建立文件夹 \efi\boot ,拷入系统镜像相对应的 bootx64.efi   文件;
    ( 4 )在 U 盘建立文件夹 \sources ,拷入系统镜像相对应的 boot.wim install.wim  文件;
    ( 5 )启动机子,选择( UEFI U 盘启动,就进入系统安装进程……
简单说说UEFIGPTSecure Boot
UEFI:
    传统 BIOS 的全称是 BasicInput Output System ,译为“基本输入输出系统”,是电脑主板 ROM 芯片上的一段代码。按下电源后,计算机会进行加电自检(检测硬件是否正常)、初始化硬件(使硬件按照 PC 的架构工作)、启动 OS Loader 加载操作系统(由 BIOS 读取 MBR 上的 Loader )、向系统及软件提供服务、硬件中断处理(硬件出现错误指令 -> 中断一下 -> BIOS 提供正确执行结果)。
    这里澄清一下 BIOS CMOS 的概念,上文说到 BIOS 是一段“代码”,当属软件范畴;而 CMOS Complementary Metal Oxide Semiconductor )译为“互补金属氧化物半导体”,是主板上的一块 RAM 芯片,当属硬件范畴, CMOS 中存放系统参数。通常有“ BIOS 设置、 CMOS 设置”等不确切的说法,准确的说法应是:通过 BIOS 设置程序对 CMOS 参数进行设置。
    新一代的电脑主板采用 UEFI BIOS EFI Extensible Firmware Interfaces ,译为可扩展固件接口)的概念最早由 Intel 提出。
    UEFI 全名“统一的可扩展固件接口”,相对于“ Legacy BIOS ”(传统 BIOS  )有着更多的优势: 模块化设计   、图形化的界面、更强的兼容性和拓展性。
    Legacy BIOS 会读取磁盘的主引导记录“ MBR ”,进而读取“启动文件”最后加载 Windows 系统。而 UEFI BIOS 会自动读取“ FAT 格式的特定分区(通常是 ESP 分区)”下的可执行程序( efi 格式), efi 文件会查找 Windows BCD 启动菜单进而进入系统。
    在 UEFI BIOS 下,我们可以手工选择 FAT 分区下的“ efi 文件”然后进行相关的操作(类似于 DOS 工具箱),当然也可以手工选择 Windows 系统启动所需要的 efi 文件,从而进入系统。
    注: EFI 在使用时通常与 UEFI 是同义词。 EFI 指可扩展固件接口,也即 UEFI  的前身。
GPT
    GPT 全名 Globally Unique Identifier Partition Table Format GUID 分区表),是源于 EFI (可扩展固件接口)使用的磁盘分区架构。
    MBR 磁盘最多允许存在 4 个主分区,并且支持磁盘最大容量为 2TB ;而 GPT 磁盘最多可允许存在 128 个主分区(在 Windows 系统中),支持磁盘的最大容量为 18EB 1EB=1024PB=1024*1024TB ,即: 1048576TB )。每个 GPT 磁盘都存在 Protective MBR ,用来防止不能识别 GPT 分区的磁盘管理工具的破坏。
    对于 Windows 系统来说, GPT 分区方案中有两个特殊的分区: MSR 分区、 ESP 分区,前面提到的 Protective MBR ,在 Windows 系统中即为 MSR 分区,是必须存在的一个分区; ESP 分区(非必须存在),是采用 UEFI BIOS 电脑的系统中,存放启动文件的分区(当然,还有其他文件)。
    GPT “优缺点”并存。优点:支持更大的硬盘、更多的分区、单个分区大小更大、每个分区存在 GUID 、分区表自带备份等。当然, GUID 分区表也存在着不足:
部分Windows桌面操作系统对GPT的支持

 
    硬件的发展速度总是令人吃惊的。几个 TB 的硬盘、 EFI BIOS 的电脑将会普及, GUID 分区方案终将成为主流。
Secure Boot
    Secure Boot “安全启动”, 前面提到, 预装 Windows 8 、基于 UEFI+GPT 模式的机器,是开启了安全启动( Secure Boot )功能的。其实“安全启动”并不是 Windows 8 的一项功能,为什么会将 Windows 8 和“安全启动”联系到一起呢?因为预装 Windows8 的品牌电脑都采用 UEFI BIOS ,大都含有“安全启动”!那什么是“安全启动”呢?
    “安全启动”是一项 UEFI 协议,在启动操作系统之前只允许加载“已签名并获得认证”的代码或程序。两个数据库“签名数据库”和“吊销的签名数据库”中列出了 UEFI 程序,类似于“白名单”和“黑名单”!系统商(如:微软)可通过“密钥加密密码数据库”中的签署密钥来更新“白名单”和“黑名单”。
    微软通过数据库中的签名程序签署了 Windows8 系统的“ OS Loader ”。 OEM 厂商将上述三个数据库存储到主板的“ NV-RAM ”中,从而达到使用“安全启动”来启动 Windows 8 。这也是为什么预装 Windows 8 的品牌机默认情况下无法安装其他系统的缘故,需要在“ UEFI BIOS ”中禁用“安全启动”。
    Legacy BIOS 环境下,操作系统启动前可加载任意的“ OS Loader ”:
 
    UEFI BIOS 环境下,操作系统启动前只能加载得到认证的“ OS Loader ”:
 
Windows
UEFI环境下是如何启动的:
    UEFI 启动 Windows 必须有一个 FAT 分区(通常叫做 EFI  系统分区),这个分区中存在引导 Windows 的文件。开机后自动查找 FAT 分区下的“ efi\Microsoft\boot\bootmgfw.efi ”文件,然后查找同一分区下的“ efi\Microsoft\Boot\BCD ”,然后加载“系统盘 :\windows\system32\winload.efi ”,这样就进入了 Windows
    bootmgfw.efi 文件我们也可以在 EFI SHELL 下手动运行。此外,在 EFI SHELL 下手动运行 FAT 分区的“ efi\boot\bootia32.efi ”或“ efi\boot\bootx64.efi ”也可以进入 Windows 。在 UEFI BIOS 中我们还可以将 efi 文件设置为启动项、默认启动项。  
    上述的 bootia32.efi bootx64.efi 分别为 32 位、 64 位的 UEFI 引导 Windows 所需要的文件。二者一一对应,因此在 64 位的 UEFI 环境下是无法安装 32 位系统的。
    上面介绍 UEFI 启动 Windows 的一个条件是: FAT 分区存在相关文件。并没有说需要 GPT 磁盘,通常将“ UEFI+GPT ”联系起来的一个重要的原因是,“ UEFI+MBR ”环境下安装 Windows 会有提示:基于 EFI 的系统只能安装到 GPT 磁盘上(微软的限制)!
    现在很多主板都是可以将“ UEFI BIOS ”和“ Legacy BIOS ”相互切换的,因此“ UEFI+MBR ”模式的解决思路一:先切换到 Legacy BIOS ,安装系统完毕后再切换到 UEFI BIOS ,自己新建一个 FAT 分区并复制相关文件到此分区(也可用 bcdboot 命令行工具)。解决思路二:进入 PE (支持 UEFI ),将 Windows 安装到硬盘,然后自己新建一个  FAT 分区并复制相关文件到此分区(也可用 bcdboot 命令行工具)。
    ——上面的叙述只是为了更进一步了解 UEFI 启动 Windows 的原理,微软作此限制肯定有原因,因此不建议在实体机操作。
实验、测试:打造UEFI虚拟机以及EFISHELL介绍
    含 UEFI BIOS 的电脑并不是所有网友都有,为了让大家都能体验 UEFI ,现在将 VMware 8.0 以上的版本)打造成“ UEFI 虚拟机”:新建虚拟机后,在虚拟机目录下找到后缀为 vmx 的文件,使用记事本打开后,添加一行文字:
firmware = "efi" 
    这样你就相当于具备了一台包含 UEFI BIOS 的电脑。
    下面介绍一下 EFISHELL :一般的电脑 UEFI BIOS 中会自带 EFI SHELL ,为了便于理解可以将 EFI SHELL DOS 相类比: EFI SHELL 其实就是在 UEFI 环境中的可执行程序( efi 格式)。
    虚拟机的 UEFI BIOS 虽然没有进入 EFISHELL 的选项,但是我们可以把 EFI SHELL 放到其他地方(如:优盘),然后在 UEFI 环境中运行 EFI SHELL 这个程序!
    准备条件:
    1 EFI SHELL Shell_2.3.0_X64.rar (需解压)  Shell_2.3.0_X64.rar (205.5 KB) 
    2 UEFI 环境下的应用程序: UEFI Apps.rar (需解压)  UEFI Apps.rar (735.9 KB) 
    3 、一个 FAT 格式的 U
    操作步骤:
    1 、新建虚拟机(例如: Windows 8 X64 ),然后将“优盘”添加到虚拟机中。
    2 、事先将解压好的“ Shell.efi ”放到 U 盘的根目录,运行虚拟机,按下“ ESC ”键进入虚拟机的“ UEFI BIOS ”。
 
    3 、点击“ Boot Maintenance Manager ”进入,如下图所示:
 
    4 、点击“ Boot from a file ”进入下图:
 
    5 、选择优盘后,选择根目录下的“ Shell.efi ”即可进入“ EFI SHELL ”。
 
 
    6 、上图即为“ EFI SHELL ”,类似于“ DOS 窗口”,当然也有它自己的命令:
       输入 fs1:  表示进入 fs1 磁盘
       输入 ls 表示显示该目录下的所有文件
       输入 cd App  表示进入 App 文件夹
       再次输入 ls 列出 App 目录下的所有文件
 
    运行某个程序,直接输入程序的名称即可。
    是不是和 DOS 中操作差不多? UEFI 更像是一个微型操作系统。
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值