SilverLining's Blog

GPT+EFI Clover 简单教程

安装 CLover EFI

对于经常折腾黑苹果吧的朋友们来说,Clover 一定是个再熟悉不过的引导工具。不过对于普通的系统玩家,可能还是比较陌生。接触 Clover 的起因是因为使用 Ubuntu 系统,本想装一个 burg 来美化一下引导,然而不知道什么原因好像没什么效果,加上 burg 项目停止更新很久了,于是打算试试传说中的 Clover Bootloader 。

Clover 被公认为继 Chameleon 之后最好的引导工具。和 Chameleon 的 MBR+Legacy 相比,GPT+UEFI 出身的 Clover 自然更加现代和接地气。

先给出 Clover 官方 wikiSourceForge 主页

在 OS X 下,Clover 自带了很多方便的工具,比如 installer,configure 等等,然而对于 Linuxer 来说,这些工具自然是无法享受的。因此我们需要使用更直接暴力一点的方法来设置我们的 CLover 。

官网 wiki 给出的安装步骤十分简单。

Linux also has a terminal and the commands are nearly identical. The installation, however, is probably only possible on a FAT32 partition. These are the differences: * Instead of rdisk1 use sdb or another definition your Linux version may use * Instead of fdisk440 for MBR setup use dd
dd if=/dev/sdb count=1 bs=512 of=origMBR
cp origMBR newMBR
dd if=boot0 of=newMBR bs=1 count=440 conv=notrunc
dd if=newMBR of=/dev/sdb count=1 bs=512

这里我们不使用推荐的 zip 包来安装。首先从这里下载最新的 bootable ISO,后缀为.lzma 。使用 7zip 等工具解压,得到 ISO 文件(x32 和 x64)。解压或直接 mount ISO 文件,将其中 EFI 文件夹下的 BOOT 和 CLOVER 文件夹 copy 至你的 EFI 分区中。

$ mkdir efi
$ sudo mount /dev/sda* efi/(可用 fdisk -l 查看分区情况)
$ sudo nautilus efi/

重启电脑,进入 Clover 界面,选择 options->install clover to all,即安装完成。

假设本来 EFI 分区中已有 ubuntu 文件夹,启动时会自动识别 Ubuntu 引导。

下面介绍 Clover 配置文件 config.plist 的设置:

不得不说为 OS X 提供支持的软件确实丰富,Clover configure 提供了便捷可视化的设置编辑功能。这里主要介绍主题安装和隐藏多余分区。

安装主题

将主题文件夹(例:mytheme)复制到 EFICLOVERthemes 中,配置 config.plist:

ScreenResolution 1366x768  //此处可设置分辨率,需要主题支持 #ConsoleMode 0 #TextOnly Theme mytheme Graphics

隐藏多余分区

首先需要获取磁盘的 UUID:

$ sudo blkid

我这里有两块硬盘,分区信息如下:

/dev/sda1: UUID="C203-DC80" TYPE="vfat" PARTUUID="f1a1baf8-aafe-4194-b5f7-d0d18225c05b" /dev/sda2: UUID="82a43986-b68b-4c22-86b7-1478009525c0" TYPE="ext4" PTTYPE="dos" PARTUUID="b5442244-f09f-4c47-a13a-d2eafe80ddcb" /dev/sda3: UUID="a1233abb-b36d-426f-96fc-568e2e0a1cf3" TYPE="ext4" PARTUUID="836fd9a8-1a89-49c7-8dd8-16fd6e11a12d" /dev/sda4: UUID="47160b00-5530-4c29-b8b8-317b086bb5eb" TYPE="swap" PARTUUID="4814f304-5e73-4bbf-bc16-0cfc95d584c0" /dev/sda5: UUID="79a07c51-372c-4d09-9294-f374cac3c17e" TYPE="ext4" PARTUUID="e07d01f5-32b0-4225-9769-73e5709d92da" /dev/sda6: UUID="000836D40003F837" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="afb2cf48-48c1-407e-8c3c-28049b2518f3" /dev/sdb1: UUID="5CF26842F268228E" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="2667bb65-d49a-4148-a26a-962689142146" /dev/sdb2: UUID="C8326E7F326E71FC" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="470fe8d4-8dbb-4866-b14f-deeb09c46df4" /dev/sdb3: UUID="6256767756764C33" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="7f0d3cfc-505a-4d2a-9ef2-28ff71d6aa92"

复制需要隐藏的分区的 PARTUUID,写入 config.plist 文件:

#Hide Windows BOOTX64.EFI afb2cf48-48c1-407e-8c3c-28049b2518f3 2667bb65-d49a-4148-a26a-962689142146 470fe8d4-8dbb-4866-b14f-deeb09c46df4 7f0d3cfc-505a-4d2a-9ef2-28ff71d6aa92

这里怎么重启都没反应,最后发现要把 #Hide 前的 #注释符号删除。

Hide Windows BOOTX64.EFI afb2cf48-48c1-407e-8c3c-28049b2518f3 2667bb65-d49a-4148-a26a-962689142146 470fe8d4-8dbb-4866-b14f-deeb09c46df4 7f0d3cfc-505a-4d2a-9ef2-28ff71d6aa92