在UEFI+GPT安装LD
Tofloor
poster avatar
woodelf
deepin
2013-11-30 22:43
Author
目前很多新的品牌计算机都已经预装了Windows 8,并采用UEFI+GPT的固件和分区表,而LD目前还不支持UEFI,因此可能会导致很多不熟悉的人觉得无从下手。

我自2010年开始便已经使用GPT,对这种组合也算略有了解,因此撰写本文,为其他对安装方法感到迷惑的坛友略尽绵薄之力。

声明:
1、本文不是官方的权威教程,可能会有部分疏漏。
2、本文对于BIOS、MBR、UEFI、GPT等概念不作解释,请自行学习理论知识。
3、本文所讨论的为在同一块硬盘安装双系统的情况,如果不安装在同一块硬盘,自然简单的多了。

前提条件:
1、一台主板支持UEFI BIOS的计算机,且已经有一个安装到UEFI+GPT的64位Windows系统。
2、你的UEFI BIOS支持BIOS兼容模式,即,可以以UEFI或者传统BIOS模式启动。
3、基础的分区知识,并且已经为LD预留了可用的自由空间(不要创建分区)。

详细步骤:
1、首先,在BIOS中关闭UEFI安全启动(可选,会导致预装的Windows 8无法启动,需要重新安装),并开启BIOS兼容支持(通常名为Legacy OS Support、Legacy Boot或CSM、Compatibility Support Module)。关于具体如何操作,请查阅主板说明书。
需要说明的是,有些主板厂商在实施UEFI的时候没有严格遵循UEFI标准,导致部分主板没有BIOS兼容支持。

2、以非UEFI模式引导你的安装介质(光盘、U盘)。通常可以通过在开机时按启动设备快捷键选择(很多主板为F12),选择形如 ASUS DW20B1S或者Kingston Data Traveller G3这样的启动项,不要选择带有EFI或者UEFI前缀的设备。

3、进入LiveCD环境之后,启动gparted,并在你的NTFS分区之后创建一个1MiB的小分区(其实只需要32KiB就足够了,不过很多分区工具不支持过小的分区),文件系统用ext2即可,避免空间的浪费。然后应用一下。
1.png
这里我解释下这个分区的作用,我们都知道,在传统BIOS上,grub的安装分为三个部分:第一部分是磁盘第一扇区446字节的MBR或者/boot所在分区的super block,第二部分是将core.img嵌入MBR后面的62个保留扇区,第三部分是把grub本体安装到/boot。而在GPT,由于在磁盘头部的保护性MBR之后就是GPT表了,没有为兼容传统BIOS而预留保留扇区,因此我们需要创建这个分区来模拟保留扇区,这也是我说分区大小只需要32KiB的原因。当然,如果使用syslinux的话,就不需要这个小分区了。

4、在创建的小分区上右键,选择“管理标志”。
2.png
5、勾选bios_grub,然后关闭。
3.png
6、之后再创建交换分区和/分区等,我的示例如下:
4.png
7、关闭gparted,运行桌面上的安装器。在“安装类型”里面选其他,像这样:
5.png
8、对照下你的分区布局,应该类似我这样,记得引导器安装位置选择整个磁盘。放心,grub2会自动探测BIOS兼容分区,并把MBR部分安装到GPT磁盘头部的保护性MBR的。
6.png
9、继续完成安装。重新启动之后,可以按F12选择启动设备(具体快捷键看你的主板说明书),应该有Windows Boot Manager和你的硬盘还有光驱等启动项。选择Windows Boot Manager就是启动Windows,选择你的硬盘或者带有Legacy等字样的话就将启动LD。而对于我的虚拟机来说,由于其EFI不支持BIOS兼容模式,因此我想要启动Windows或者LD就得对应把配置文件里面的firmware项进行修改。

以上就是整个的UEFI+GPT简单安装流程了,当然,等LD以后支持了UEFI,就可以直接用UEFI模式引导安装介质来进行纯UEFI启动。

本文适用的范围:
计算机带有UEFI+GPT,预装了Windows 8并且不想删掉自带Windows的用户,也适用于想要使用LD+GPT单系统的用户。
用此方法的还有一点好处就是无需关闭UEFI安全启动,并且UEFI和传统BIOS两套引导机制互相隔离,可以最大程度保持引导的独立性和可扩展性。

PS:回头再研究下把LD安装到自定义btrfs+subvolume的方法,之前用直接解压squashfs的方法会导致lightdm无法启动。
Reply Favorite View the author
All Replies
cxbii
deepin
2013-11-30 22:59
#1
支持技术贴!这个可以方便一些人哈,本版块顶置哈
Reply View the author
xua131988
deepin
2013-12-01 07:15
#2
非常详细....

去看看我的华硕笔记本bios有没有Legacy..
Reply View the author
xua131988
deepin
2013-12-01 07:47
#3
启动的时候, 没有选择操作系统的菜单, 直接进win8了..
Reply View the author
woodelf
deepin
2013-12-01 07:51
#4
启动的时候, 没有选择操作系统的菜单, 直接进win8了..
按F12等快捷键选择启动设备,有Legacy等字样的就可以启动LD。或者你把几个启动设备都试试。在UEFI下面,不再有BIOS那样的MBR双系统启动菜单了。
Reply View the author
lxf1992521
deepin
2013-12-01 07:52
#5
好贴,赞一个!!!
Reply View the author
yxczx2010
deepin
2013-12-01 08:23
#6
为什么我建立的1m分区管理标志是灰色的啊?
Reply View the author
woodelf
deepin
2013-12-01 08:27
#7
为什么我建立的1m分区管理标志是灰色的啊?
因为你建立完以后还没应用,要先应用更改。
Reply View the author
xliang9550
deepin
2013-12-01 18:19
#8
问一下,可以在Mac上使用此方法(借助bootcamp)进行安装吗?
Reply View the author
woodelf
deepin
2013-12-01 18:32
#9
问一下,可以在Mac上使用此方法(借助bootcamp)进行安装吗?
不能,bootcamp的原理是创建GPT/MBR的混合表,而不是一个纯GPT表。
在GPT/MBR混合表下面,所有的GPT分区在MBR那里会映射为一个ID为0xEE的大分区。而这种方法创建的是纯GPT表。
Reply View the author
yxczx2010
deepin
2013-12-02 06:28
#10
我按照上面的步骤一步一步做出来,重启没有出现引导,选择第一硬盘启动也没有选择引导。我的是已经再主板上开启了leg fisrt。不知道为什么就是没有引导出来,直接是windows引导。我的主要上没有csm什么的选项,但是有uefi 和legy的选项,我选择了leg first,不知道是不是这里的原因?我的电脑默认是win7 64位 gpt安装的。
Reply View the author
woodelf
deepin
2013-12-02 06:30
#11
我按照上面的步骤一步一步做出来,重启没有出现引导,选择第一硬盘启动也没有选择引导。我的是已经再主板上开启了leg fisrt。不知道为什么就是没有引导出来,直接是windows引导。我的主要上没有csm什么的选项,但是有uefi 和legy的选项,我选择了leg first,不知道是不是这里的原因?我的电脑默认是win7 64位 gpt安装的。
看四楼。
Reply View the author
yxczx2010
deepin
2013-12-02 08:04
#12
[quote]我按照上面的步骤一步一步做出来,重启没有出现引导,选择第一硬盘启动也没有选择引导。我的是已经再主板上开启了leg fisrt。不知道为什么就是没有引导出来,直接是windows引导。我的主要上没有csm什么的选项,但是有uefi 和legy的选项,我选择了leg first,不知道是不是这里的原因?我的电脑默认是win7 64位 gpt安装的。
看四楼。[/quote]
“并在你的NTFS分区之后创建一个1MiB的小分区”我的是在ntfs分区之前创建的小分区,是不是这里的原因?
Reply View the author
woodelf
deepin
2013-12-02 17:24
#13
[quote][quote]我按照上面的步骤一步一步做出来,重启没有出现引导,选择第一硬盘启动也没有选择引导。我的是已经再主板上开启了leg fisrt。不知道为什么就是没有引导出来,直接是windows引导。我的主要上没有csm什么的选项,但是有uefi 和legy的选项,我选择了leg first,不知道是不是这里的原因?我的电脑默认是win7 64位 gpt安装的。
看四楼。[/quote]
“并在你的NTFS分区之后创建一个1MiB的小分区”我的是在ntfs分区之前创建的小分区,是不是这里的原因?[/quote]
跟这个无关,那个1MiB的分区可以位于硬盘前2TiB空间内的任意位置。
你的UEFI中是否有Legacy only的选项?有的话试试那个。某些主板阉割了部分UEFI实施标准,有可能导致legacy的启动项不正常。
Reply View the author
butangmucat
deepin
2013-12-07 06:20
#14
以legacy引导,ubiquity -b跳过安装grub然后用parted magic以uefi模式chroot安装grub
亲测有效
Reply View the author
132******96
deepin
2013-12-15 07:12
#15
哈哈,wood君,之前在卡饭见到你的类似帖了,那还是Ubuntu的,没想到这里又变成LD了,本土化做的真好 :
Reply View the author
wensley
deepin
2013-12-21 05:45
#16
进来支持下楼主技术贴
Reply View the author
impossible
deepin
2013-12-27 14:55
#17
I have a UEFI system and during the installation I chose to replace my previous OS with Deepin. I had no problems. It boots. I did not have to partition it myself
Reply View the author
a287740928
deepin
2014-01-02 06:05
#18
绝世好贴,之前没遇到gpt分区,现在碰到了,虽然不是安装deepin,但是留着以后备用,步骤很详细,评分+5
Reply View the author
knightlu
deepin
2014-01-12 18:25
#19
不想用混合分区表把问题复杂化,可以把dp装到其他mbr硬盘上,然后复制分区到dpt硬盘,再自己安装efi的gurb2来引导吗?
Reply View the author