大家好,西瓜君又来了,前一篇关于BIOS+MBR分区实现双系统的文章里面,大家可以发现BIOS+MBR实现双系统真的是很简单,我们什么都不需要做,不需要EasyBCD,不需要启动助手,因为,Linux有自带的强大的Grub,他会为我们做好一切。
但是很多朋友,特别是新买预装了windows8.1(正版)的电脑,在做双系统的时候出现了问题,这时候Grub就帮不上你了,各种启动助手都帮不上你,但是别急,西瓜君可以帮你(开个玩笑)。。。
好了言归正传,这篇关于UEFI模式实现双系统或者多系统的文章,适用于以下朋友,1、电脑主板支持UEFI启动的,希望使用UEFI快速启动,又希望使用多系统的2、已经预装了正版WIN8.1的系统的。
在开始安装(倒腾)前,西瓜君仍旧啰嗦一下(磨刀不误砍柴功),大体上讲讲,UEFI+GPT模式的启动原理,首先我们来回顾下BIOS引导MBR分区的流程,BIOS开机自检——》读取硬盘MBR分区的主引导记录—》控制权交给引导程序-》引导程序根据安装时候的配置读取各分区记录—》根据各分区已经有的系统情况,列出启动目录—》根据用户选择,启动选择的引导文件启动用户选择的系统。
现在我们来说说UEFI的情况,主板上的UEFI模块—》硬盘内的第一个fat分区,如果分区内
有EFI这个文件目录,就根据EFI文件目录的引导文件加载各类型的驱动和引导文件,启动系统同时完成自检。(如果第一个fat分区没有EFI目录则选择第二个,如果第一块硬盘没有,择选择第二块,或者U盘以此类推),当然,UEFI的实际启动过程,并不像我说的这么简单,我这里也仅仅是简单描述下跟传统BISO引导的不同地点而已。现在我们还是来看看实际的情况。先来看看基于UEFI启动的系统的硬盘结构实例:
这是我目前使用的电脑的第一块硬盘(120G的SSD)的分区结构柱状图。这块硬盘上我一
共做了6个分区(GPT分区结构不需要构建逻辑分区,所有分区都是唯一标识的分区)。硬盘头部有两个很小的分区,第一个ESP分区(这个就是放置EFI文件的分区,这个分区非常重要,每次做好系统应该自觉备份里面的所有文件到安全的地方),第二个是MSR分区(微软保留分区,无格式传统软件无法读取),后面接下来就是NTFS分区(50G,安装有WIN8系统和各类软件)第四个分区也是NTFS分区(我保留了35G,专门留个放WOW的),第5个就是安装好Ubuntu的Linux分区,最后一个是OSX的HFS分区。
必须说明的是ESP和MSR分区必须是FAT或者FAT32格式的文件系统,否则主板的UEFI初始化程序无法读取上面的EFI文件夹。ESP分区即最重要的启动分区(名字可以随意)里面保存着整个计算机系统的所有启动信息。下面我们再来看看ESP分区下面的的文件结构:
ubuntu安装教程这是一个我在UEFI环境安装好的win8.1后保存下来的ESP分区的目录表(ESP分区根目录
下面是EFI,这个图示EFI文件夹里面的两个文件目录)。
Boot文件夹里面是一个名字叫做bootX64.efi的文件,这个文件UEFI引导的必须文件,而且必须是在ESP根目录Boot文件夹里面。
接下来再来看看Microsoft目录下面的文件结构。Mircrosoft目录下面也是一个Boot文件夹,点开这个/mircrosoft/boot文件夹,可以看到如下图所示的文件:
这个目录类容丰富,包含了windows系统引导启动的所有信息,非常重要,文件夹是字体和语言部分,BCD包含了windows引导开始以后的信息(例如安装Hyper-v虚拟机和恢复还原之类的就会更新里面的信息)。bootmgfw.efi 是 Windows默认引导文件


efi\boot\bootx64.efi
efi\microsoft\boot\bootmgfw.efi
这样的文件结构就构成了UEFI系统引导启动windows的大体结构了(有趣的是,在windows默认的安装的EFI文件结构中,bootx64.efi和bootmgfw.efi实际上是同一个文件,名字不同而已,但是他们出现的位置不同,所起到的作用不同)

UEFI启动分区(本例为ESP分区)的文件结构分析得差不多了,我们在来回顾一次UEFI启动的Windows8.1的过程,UEFI控制到硬盘扫描硬盘上的fat系统类型分区,到EFI文件夹,读取EFI文件夹类Boot文件夹的bootX64.efi文件,然后根据其中的信息到需要加载的mircosoft文件夹,再次读取mircosoft文件夹里的Boot文件夹类的bootmgfw.efi文件,以此按照bootmgfw.efi文件的要求加载各种启动信息,完成Windows启动。
到此为止,我们差不多对UEFI环境有个比较初步的了解了,对UEFI启动也差不多有个简单的理解了。现在我们开始回归这篇文章的主题,如何在UEFI环境下安装WIN8.1+Unbuntu。本着对新同学负责的原则,我们还是从最基本的UEFI安装WIN8.1说起。
已经预装好UEFI启动Win8.1的朋友可以直接下跳到Ubuntu的安装。