笔记本原版黑苹果安装教程
Orange / / 生活杂记 / 阅读量 2642

前言

Clover支持两种启动方式,启动过程如下:

  • 基于BIOS的电脑(老式主板)
    BIOS -> MBR -> PBR -> boot -> CLOVERX64.efi -> OSLoader
  • 基于UEFI的电脑(新式主板)
    UEFI -> CLOVERX64.efi -> OSLoader

对于支持UEFI的机器,我们通常用CLOVER引导原版安装,这种方式最大的优点就是有恢复分区可以正常升级,当然前提要把引导做好。

前期知识储备

CLOVER的目录结构

CLOVER正常工作需要的完整目录包括config.plistCLOVERX64.efi两个文件以及ACPIdrivers64UEFIkexts、和themes几个目录,如图所示: 其中,config.plist是最核心的文件—-配置文件,CLOVER所实现的多数功能都是通过这个文件进行配置的,对其进行配置修改的最好用的工具就是Clover Configurator,主页面如下: 详细的配置方法下面会有介绍。 另外一个文件是CLOVERX64.efi,这个文件用以启动CLOVER引导,通过EasyUEFI或者BIOS对启动项进行添加操作时,就是指向的这个文件。ACPI是用以存放机器ACPI表单的,全称是”高级配置和电源管理接口”(Advanced Configuration and Power Interface),其子目录由originpatchedWINDOWS构成,其中origin用以保存通过在CLOVER引导界面按F4Fn F4提取的原始表单,此目录的所有表文件是不加载的,需要对其进行编译得到.dsl文件,然后对其进行修改拍错,最后保存成.aml文件保存至patched目录才会在启动时加载,而WINDOWS目录则可以忽略不计。在黑果中,我们用到的表单文件只有SSDTDSDT,其中DSDT主要是对各种设备的描述,而SSDT则主要是用以实现某个功能。drivers64UEFI是由各种EFI驱动组成,在笔记本黑果需要用到的有FSInject-64.efiHFSPlus-64.efiOsxAptioFixDrv-64.efiAPFS.efi以及OsxFatBinaryDrv-64.efi,在新版CLOVER中只需要FSInject-64.efiHFSPlus-64.efiOsxAptioFixDrv-64.efi、以及APFS.efikexts主要用于存储各种驱动(OS X称为内核扩展)themes用以存储CLOVER引导界面的主题。

根据机器配置定制kext

kextEFI的配置中是相当重要的,好的kext配置可以弥补config的不足,不好的kext配置也会让本应完美的config发挥不出作用。
FakeSMC.kext:FakeSMC是现今的⿊黑苹果过程中唯⼀一的”必要性”内核扩展程序。对于⿊黑苹果有着⽆与伦比的重要性,但是很多⼈并不知道FakeSMC为什么重要,只是知道必须有它才⾏行,。简⽽而⾔言之就是: FakeSMC是⽤用于将PC主板上的各种控制芯⽚片伪装成Mac独有的硬件控制芯片SMC以骗过系统从⽽而是系统正常启动的⼀一个内核扩展(其实很复杂,这⾥里不多说了)。在系统启动的阶段,FakeSMC负责告知系统有关主板上SMC芯⽚片(伪装出来的)的各种加密信息,欺骗系统。也就是说呢,无论你笔记本是什么配置,此驱动是必须的。
ApplePS2SmartTouchPad.kextVoodooI2C.kextVoodooPS2Controller.kext:此驱动用以驱动键盘鼠标以及触摸板,两者选择一个即可,两者区别就是适用的类型不一样,有PS/2Synapticsalpsi2c等等,其中SynapticsalpsApplePS2SmartTouchPad.kext适配性好一些,VoodooI2C.kext比较麻烦,仅适用于i2c触摸板。具体怎么确定走的总线类型,大家参考百度就好了,这里就不再赘述。
FakePCIID.kext:这个kext的目的是与IOPCIDevice设备建立连接,以便当另一个驱动程序连接到同一设备时,它可以提供备用的PCI ID。也就是说,如果用到Fake-PCI-ID中的其他任何kext的话,此驱动都是必要的。
FakePCIID_Intel_HD_Graphics.kext:此驱动主要用于核显HD4200 HD4400 HD4600 P4600Iris 540 Iris 550 Iris Pro 580HD510 HD515 HD520 HD530 P530(多数530不需要这个)、P4000P6300 - 162aUHD620 KabyLake-RUHD630 CoffeeLake
FakePCIID_Intel_HDMI_Audio.kext:其目的是为不支持的HDAU提供支持(通常称为B0D3,但需要将其重命名为HDAU,以满足Apple的期望值)在Haswell以上的系统中提供HDMI-audio的设备。
FakePCIID_BCM57XX_as_BCM57765.kext:这个kext将与众多不受支持的BCM57XX以太网设备建立连接,以使本机驱动程序为兼容的更广泛的BCM以太网芯片组工作。
FakePCIID_Intel_GbX.kext:这个kext将与一些Intel以太网设备建立连接,以使基于Intel芯片组的驱动程序工作。
FakePCIID_XHCIMux.kext:将会连接到8086:1e31, 8086:9c31, 8086:9cb1, 8086:9c31, 8086:8cb1这个注入器是正常的FakePCIID任务的一部分。它实际上并没有伪造任何PCI id。相反,它将某些值强加于Intel XHCI USB3控制器上的XUSB2PR (PCI配置偏移0xD0)。其效果是将任何USB2设备与XHC端口上的USB2引脚连接到EHC1。换句话说,使用USB2驱动而不是USB3驱动程序(AppleUSBEHCI vs AppleUSBXHCI)处理USB2设备。
FakePCIID_AR9280_as_AR946x:这是FakePCIID.kext的特殊应用,是在一个AR9280被重新命名为其他设备的情况下使用的。例如,在联想u430中,将一个AR9280作为AR946x重新命名是很有用的,因为该设备可以被BIOS白名单所允许,而AR9280不是。通过使用FakePCIID,我们可以将PCI id重新映射回AR9280 (168c:002a),即使该设备本身报告的是168c:0034。
FakePCIID_Broadcom_WiFi.kext:这个kext将连接到14e4:43b1, 14e4:4357, 14e4:4331, 14e4:4353, 14e4:432b, 14e4 . 432b, 14e4:43a3,或14e4:43a0。以及106b:4e, 14e4:4312, 14e4:4313, 14e4:4318, 14e4:431a, 14e4:4320, 14e4:4324, 14e4:4324, 14e4:4328, 14e4:432d。
最初是为BCM94352Z创建的,这个特殊的FakePCIID应用程序。在使用多种支持的Broadcom WiFi设备时,kext被用来模拟真正的Apple Airport(苹果无线网卡)。
ACPIBatteryManager.kext:用以使笔记本正确显示电量,但通常需要配合DSDTpatch才能发挥作用。
VoodooHDA.kext:万能声卡驱动,用以禁用AppleHDA来驱动声卡。
AppleALC.kext:通过对AppleHDA的动态patch实现对AppleHDA的完整加载。
Lilu.kext:一个开放源码的内核扩展,为macOS系统提供了一个任意的kext、库和程序补丁的平台。
IntelGraphicsDVMTFixup.kext:修复因BIOS显存分配不足造成的KP。建议broadwell+平台使用。
IntelGraphicsFixup.kext:动态修复核显的各种问题(例如腾讯视频死机,开机二阶段花屏等),建议Haswell+平台使用。
CoreDisplayFixup.kext:为不受支持的4K机器(非Iris)开启高分辨率支持。
AzulPatcher4600.kext:针对HD4600的额外修复,仅推荐HD4600使用。
HibernationFixup.kext:修复睡眠,以支持某些机器在3和28休眠模式下的正常休眠。
NvidiaGraphicsFixup.kext:修复某些n卡的黑屏。
WhateverGreen.kext:用以驱动A卡。
RealtekRTL8111.kext:用以驱动RealtekRTL8111.kext以太网卡设备。
AppleIGB.kextIntelMausiEthernet.kext:用以驱动Intel板载网卡设备。

根据机器配置定制config

Clover 可以根据硬件进行自动配置,但是自动配置组件并不总是完美的。这也是保留用户可以自定义配置的原因。用户可以修改配置文件config.plist中的配置参数,或者基于GUI的配置界面进行修改配置。配置文件是基于XML的,可以以文本文件来处理。它可以用纯文本编辑器进行编辑,也可以用plist编辑器进行编辑,如PlistEdit。配置文件 (config.plist) 必须放在EFI/CLOVER目录下。
这里遵循一个原则,尽可能简单的设置config,不知道具体作用的就让他空着好了,如果你不知道参数的需求值是什么,就从配置文件中排除!不要用没有值的参数。
正所谓前人种树,后人乘凉,很多黑果的热心朋友已经为我们做好了教程,这里我直接拿来用了。>正所谓前人种树,后人乘凉,很多黑果的热心朋友已经为我们做好了教程,这里我直接拿来用了。

  • ACPI-1
  • ACPI-2
  • BOOT
  • CPU
  • Device
  • Disable Drivers
  • GUI
  • Graphics
  • Kernel and Kext Patches
  • Rt Variables
  • SMBIOS
  • System Parameters
  • 不敢下手的没关系,我给一个最简单的模板,全按这个来就足可以装上最常见的。
    敢下手了,没有Mac环境?没关系,送你们在线编辑器,点这里传送门。里面目前加入了一些常见的配置,帮你完成一部分工作。

    了解drivers64UEFI各个.EFI文件的作用,精简引导

    BIOS启动过程中要用到drivers32drivers64目录,UEFI启动过程中则使用drivers64UEFI目录。它们的内容会根据配置和BIOS版本而有所不同。
    必须要提的一点是这些驱动程序只在bootloader运行时有效,不会影响最终启动的操作系统。
    至于到底要使用哪些驱动程序由用户来决定。

  • NTFS.efi
  • NTFS文件系统驱动程序。用于启动Windows EFI系统。

  • HFSPlus.efi
    HFS+文件系统驱动程序。这个驱动对于10.13之前的系统版本来启动Mac OS X是必须的。
  • APFS.efi
    APFS文件系统驱动程序。这个驱动对于在10.13的系统版本通过APFS装的黑果来启动Mac OS X是必须的。
  • VBoxHFS.efi
    HFSPlus.efi的替代品,性能要差一点。
  • VBoxExt2.efi
    EXT2/3文件系统驱动。用于启动Linux EFI系统。
  • VBoxExt4.efi
    EXT4文件系统驱动。用于启动Linux EFI系统。
  • FSInject.efi
    控制文件系统注入kext到系统的可能性。
  • PartitionDxe.efi
    已经存在于在CloverEFIUEFI中,但没有为Apple分区优化,也没有为GPT/MBR优化。
  • OsxFatBinaryDrv.efi
    允许加载FAT模块比如boot.efi
  • OsxAptioFixDrv.efi
    修复AMI Aptio EFI内存映射。如果没有就不能启动OS X
  • OswLowMemFix.efi
    OsxAptioFixDrv的简化版。两个不能同时使用。
  • DataHubDxe.efi
    已经存在于在CloverUEFI中。建议还是使用它,不会产生冲突。
  • CsmVideoDxe.efi
    UEFI里提供更多分辨率的显卡驱动。
  • 看了这么多,千万不要崩溃,我告诉大家一个经验,一般Drivers64UEFI目录只需要下面几个.EFI驱动就够了。

    进攻ACPI ,完美黑苹果(进阶篇)

    论坛贡献会员daxuexinsheng已经翻译了RehabManDSDT教程,可以说是非常详细,可以直接参考:使用补丁修改DSDT/SSDT,以及RehabMan的原贴
    如果你喜欢hotpatch,还是推荐RehabMan的原贴

    准备工作

  • 集成CLOVER的原版镜像
    链接:https://pan.baidu.com/s/1gfTmRj9 密码:s3dv
  • Transmac
    链接:https://pan.baidu.com/s/1oAn79Zc 密码:yafn
  • easyUEFI
    链接:https://pan.baidu.com/s/1nwqbnMp 密码:gxoc
  • Clover Configurator四叶草助手
    链接:https://pan.baidu.com/s/1ht2wFQW 密码:tbce
  • DiskGenius
    链接:https://pan.baidu.com/s/1cVyULo 密码:pfrm
  • 安装步骤

    利用Transmac将原版镜像写入u盘

    打开TransMac,右键选择欲制作的USB盘符,选择Restore with Disk Image,选择下载好的dmg文件,会弹出窗口,提示将要格式化USB磁盘,点击OK按钮继续,耐心等待写盘的完成。写入完成,若弹出对话框提示将其格式化,点击取消。

    利用鲁大师等软件查看自己机器的配置信息,来定制 config 和需要用的kext

    这一步想必不用我多说,大家利用鲁大师或者AIDA64看一下自己配置好了。有一点提示,尽量在安装过程中不考虑各种kext,尽量用少的驱动去安装,安装完成后再完善驱动,这样可以减少许多安装中的错误,也利于排错,但需要注意的必备的驱动一定要放,例如FakeSMC.kext、还有就是键盘驱动。当然老鸟无所谓了,直接把需要用到的都放上就OK了。以我自己机器为例,我的是笔记本,配置如下:

    主板:MECHREVO GK5MRFX
    独立显卡:Nvidia GeForce GTX 1650 Ti ( 4 GB )
    核心显卡:Intel UHD 630
    声卡:Realtek @ Intel High Definition Audio Controller(ALC274)
    以太网卡:瑞昱 RTL8168/8111/8112 Gigabit Ethernet Controller
    无线网卡:Wireless-AC 9462

    按照上面的驱动简要说明,我以太网卡是RTL8168,那么需要RTL8168.kext、核心显卡是Intel UHD630,就需要FakePCIID.kextFakePCIID_Intel_HD_Graphics.kext,声卡比较麻烦,但是我已经经过applealc来仿冒成功,无线网卡是Wireless-AC 9462目前英特尔无线网卡无解,所以不考虑Lilu.kext,所以需要Lilu.kext,基本黑苹果都需要的依赖,我需要IntelGraphicsFixup.kext来解决腾讯视频死机的问题,所以放上这个。暂时只考虑这些驱动吧,下面就进入安装阶段。

    重启利用U盘启动选择安装盘

    开机按esc键进入启动项列表,不同厂商热键不同,参考下图:

    选择U盘进入,这里就不介绍太多了,大家玩黑果的想必对BIOS不会陌生,不过需要注意的是需要将BIOS中的安全启动关掉。
    接下来就会进入CLOVER引导界面
    通过键盘方向键选中Boot OS X Install from 代表你的镜像名字,然后回车。

    等待进入安装界面。

    这里选择自己擅长的语言好啦。

    磁盘工具分区

    选择磁盘工具,并继续

    选择显示所有设备

    选择SSD Media,点击抹掉按钮,选择默认的Mac OS扩展(日志型),在10.13中如果装在SSD上,也可以选择APFS,将名称修改为Macintosh HD(名字随意啦,自己喜欢就好,但要是英文),点击抹掉按钮,抹掉完成后,点击完成按钮。

    然后退出磁盘工具,到这里,磁盘工具的动作就已经结束了。

    退出磁盘工具,选择安装macos选中刚才抹掉的分区开始安装

    选择安装macOS,并继续

    接下来按照提示一步一步来就好了,有一步需要注意的就是选择安装分区时,选择自己之前抹掉的那个分区。

    接下来静静等待,会有一次自动重启,依然用U盘启动,注意这次会在引导界面多出一个图标,选择除第一次选的图标外的另一个图标。然后继续等待

    系统安装完成后,重启进入系统设置向导,接下来根据下面的图一步一步设置就好了

    这里选择现在不传输任何信息

    这里注意,一定不要选择加密!!!

    转移 CLOVER到硬盘ESP,摆脱U盘引导

    这里用到前期准备的EasyUEFI,在Windows下安装打开此软件,添加CLOVER启动项,并置顶。具体操作参考: 黑苹果安装从0开始—-clover优盘引导改硬盘引导篇

    后期的驱动安装以及优化

    摆脱万能声卡,利用AppleALC加载原生声卡


    参考这个帖子:自己动手用上AppleALC,使用原生AppleHDA

    通过对DSDT打补丁完善电池显示

    参考pcbetadaxuexinsheng的帖子
    tonymacx86RehabMan的帖子

    加载x86实现变频和原生电源管理,完善节能器信息

  • 对于Haswell以及Broadwell平台,利用ssdtPRGen生成SSDT,在configdropCpuPmCpu0Ist两个表,并利用FakeSMCDSDThotpatch加载AppleLPC
  • 注入HiPI和显示器信息完善唤醒后的花屏、闪屏、撕裂屏问题

    参考:macOS Sierra 10.12下 开启HiDPI 傻瓜式开启教程

    写在最后

    本帖多处引用现成帖子,只是将整个流程做个陈述,意在整理思路,以便大家更好地理解实践。本人水平有限,帖子中的不正确之处希望大家积极批评指出,一起完善。
    楼主真的是懒到蜕皮(手动滑稽哈哈)帖子中图片很多是出自黑果小兵的博客:macOS安装教程兼小米Pro安装过程记录
    感谢各位黑果前辈的好帖子,引用太多,文中也有说明,就不一一列出了。
    待续……

    本博主机型配置efi

    下载地址:1607327617-Mechrevo Z2AIR S OC

    支付宝捐赠
    请使用支付宝扫一扫进行捐赠
    微信捐赠
    请使用微信扫一扫进行赞赏
    有 0 篇文章