UEFI是什么,有什么用?如何使用UEFI方式安装系统?

UEFI直白的讲是一种系统启动方式,但是这样讲实际上是不严格的。UEFI的全称是统一可扩展固件接口(Unified Extensible Firmware Interface),这就表示实际上它是一系列统一的接口标准,但是我们通常更关注它对系统引导的影响,我们通常拿它和BIOS方式做对比,本片文章也主要讨论UEFI对于启动的影响。

我们在配置启动选项的时候通常看到的是UEFI和Legacy两种方式,Legacy也就是传统BIOS对应的启动方式。说是启动方式,实际上说成“发现启动的方式”更加好理解。因为在启动过程中UEFI和Legacy主要功能是发现磁盘上可以启动的选项。

现在我们就来看看Legacy方式和UEFI方式分别是怎么发现启动的。在早期,系统的启动项是写在主引导记录也就是MBR中的,这个记录只能写在磁盘开头的446字节中,很明显主引导记录的容量和位置都有很大的局限性,并且磁盘的分区信息也是写在主引导记录中的,主引导记录的容量限制就更加明显了。也正是因为主引导记录的体积限制,我们只能用它创建4个分区的描述,这也是广为流传的一个硬盘只能创建4个主分区的原因。因为主引导记录的特点,电脑在开机的时候只需要完成一定工作后读取主引导记录并按照主引导记录的描述继续读取需要运行的程序就可以了,但是如果主引导记录损坏,那整个磁盘就都会遇到故障,这也是使用Legacy经常遇到系统无法启动的原因。

而对应UEFI的引导方式不再继续使用MBR分区方式,而是采用GPT分区表。GPT分区表可以带来更多的分区和更大的分区容量。虽然很多人用不上更多的分区和更大的磁盘,但我依然推荐使用GPT分区方式。实际上GPT分区表里是有MBR的,但是包含MBR记录的目的仅仅是告诉那些只支持MBR的电脑不要乱动我的分区表。在使用GPT分区表的情况下,机器不能仅仅通过读取第一个扇区就确定可以从哪里启动了,但是不用担心因为UEFI比BIOS更加强大,它不仅能轻松发现哪些分区可以启动,甚至可以直接挂载分区进行文件管理。实际上UEFI发现启动选项正式依靠文件管理,UEFI可以直接读取各个分区的文件搜索可以启动的文件,如果你的机器是使用UEFI方式引导的,你通常可以在启动分区中发现一个叫做EFI的文件夹,这里面就是引导要用到的程序。如果你确定你的电脑是UEFI方式引导的,但是却看不到EFI文件,那是因为有一个专门的EFI分区,并且这个分区通常是没有设置卷标或者挂载出来。使用这个方式发现引导的好处很明显,首先避免的主引导记录的位置和容量的限制,所有分区的任意位置都可以存储引导信息和引导程序,其次,如果你的硬盘头部的扇区损坏了,你完全可以不用他们,只需要在分区的时候跳过它们,不管你的分区在哪个位置,都可以通过写入EFI文件配置启动。其次得益于UEFI的文件管理功能,有些高级的主板甚至支持直接挂载分区对分区中的文件进行编辑,这样在发生引导错误的时候我们就可以直接通过覆写文件的方式进行修复,实际上Windows10上的自动修复修复功能就是这样实现的(但是确实更加复杂),相比传统的编辑磁盘头部的主引导记录,这种方式真避免了很多麻烦。

那么如何设置UEFI启动呢?配置UEFI启动需要在安装系统的时候配置。首先你要确定你的机器支持UEFI模式启动,只要你的机器不是古董机通常都可以使用UEFI方式启动,你可以在BIOS(你注意到我这里使用BIOS指代UEFI和传统BIOS,实际上UEFI就是一种BIOS)选项中查看引导选项,通常有Legacy、UEFI和兼容3种模式,如果你确定你不在需要使用Legacy启动方式,你也可以直接设置为仅UEFI模式。

然后需要确定你要安装的操作系统是否支持UEFI模式启动。方法很简单,使用虚拟磁盘挂载安装镜像或者使用解压缩软件打开镜像,查看镜像中有没有EFI文件夹。如果存在EFI文件夹,那就说明这个镜像支持以UEFI的方式启动。

下面我们就来创建一个可以使用UEFI模式启动的U盘,使用Legacy方式启动的启动U盘通常需要使用烧录软件模拟成CD-ROM进行创建,相比之下,创建UEFI模式启动的U盘就简单多了。首先将U盘格式化为FAT32格式,如果你的U盘已经是FAT32格式就不需要再进行格式化了,然后使用虚拟光驱挂载镜像,将所有文件拷贝的U盘中,或者直接使用解压缩工具解压到U盘中。得益于UEFI模式使用文件管理发现启动项的方式,只要使用主板上的UEFI程序支持的文件系统并将所有安装文件拷贝到分区中就可以创建一个引导分区。同理,使用任何主板支持的存储介质都可以创建一个安装盘。

值得之前没有使用UEFI安装系统的同学注意,在使用UEFI安装系统的时候要选择有UEFI前缀的引导项,如果你找不到这个引导项,需要到BIOS中确认是否支持或者打开UEFI引导方式。

希望通过上文,你可以明白UEFI并没有多么复杂,相比之下使用UEFI来配置计算机更加简单,并且可以带来更多的好处。甚至有些厂商会在UEFI中嵌入反病毒程序,这也都得益于UEFI文件管理等新特点。至于BIOS和UEFI在运行中的区别,我们可以理解成传统BIOS只知道读取磁盘的第一条记录,然后按照他的描述去启动,而UEFI不一样,UEFI清楚的知道自己启动的是什么以及如何启动它,甚至还可以对启动项目安排一下,总之更高级就是了。