本教程适用于所有 EFI Loader 。引自:http://bbs.pcbeta.com/viewthread-1683114-1-1.html
DISCLAIMER: 本教程将假设你信任所有你使用的 EFI Loader 。对于可能造成的系统安全性降低,我概不负责。
See also: https://wiki.archlinux.org/index.php/Secure_Boot
在诸如 Surface Pro 3 之类的设备上关闭安全启动太难看了(关闭过的懂,血红大屏),并且在多系统切换时可能触发Windows 10安全保护机制(要求输入 Bitlocker 恢复密钥/因安全检查失败拒绝系统登录),因此这样可以带来更好的体验。
Verified on Surface Pro 3.
1. 准备环境
如果你比较懒,那么可以下载以下包
并解压到 USB 存储设备根目录,然后跳到第二步。
下载一个 Ubuntu 15.04 AMD64 ISO,然后提取出boot和EFI两个文件夹。
从 https://www.archlinux.org/packages/extra/any/prebootloader/ 下载 Prebootloader (看 Download From Mirror)
解压得到这些东西:
把它们复制到 EFI/BOOT 下。
修改 boot/grub/grub.cfg,添加如下选项:
menuentry "Hashtool" {
set gfxpayload=keep
chainloader /EFI/BOOT/HashTool.efi
}
复制代码
保存。
2. 准备需要被 Hashtool 记录的文件
2.1 下载最新的 Clover UEFI Loader,整理并拿出你所有需要的EFI驱动模块(driver64UEFI下的),放到一起。
把 CLOVERX64.EFI 也放到这个文件夹下。把这些文件甩到上文的存储设备里。tools 下的 EFI 应用程序也一并复制过来。
2.2 你还需要你的 OS X 的 boot.efi;从 /System/Library/CoreServices 里获取并复制到上文的存储设备里。
3. 重启并使用这个 USB 设备启动,选择 Hashtool 这个启动选项
选择 Enroll Hash,会跳出选择文件的窗口,把第二步的文件一个个注册即可。重启。
4. 配置 Clover
这步根据情况决定;
4.1 USB 启动设备
打开你的含有 Clover UEFI Bootloader 的 USB 启动设备,到 /EFI/BOOT 里,删除原有的 BOOTX64.EFI,复制 PreLoader.efi 并改名为 BOOTX64.EFI,复制 CLOVERX64.EFI 到目录里并改名为 Loader.efi
4.2 硬盘启动设备
It depends. 在 ESP 分区里,到 Clover 目录里,把 CLOVERX64.EFI 改名为 Loader.efi,把 PreLoader.efi 复制进来改名为 CLOVERX64.EFI
5. 好了,尝试在打开 Secure Boot 的情况下启动 OS X。一般是可用的
FAQ:
Q1. 我可以进入 Clover 但是试图引导 OS X 闪了一下后返回了 Clover
A1: 看 Section 2.2
Q2: 注册 Hash 的时候报错
A2: 如果是 32bit EFI Application,这是正常现象,忽略。例如 Shell32.efi
Q3: 无法启动 Hashtool.efi
A3: Blame on your System Vendor。他们可能没有放微软的第三方UEFI CA
Q4: 看不到 HFS+ 分区
A4: 看 Section 2.1。你可能漏了驱动模块
Q5: 我需要 hash Kernel Extensions (驱动) 么?
A5: No. UEFI BDS不负责加载 Kernel Extensions 。Kernel Extensions 的完整性由 OS X Kernel 负责。 Only load third-party Kernel Extensions that you trust.
Q6: 我需要 hash ACPI dsdt 么?
A6: No.