曲径通幽论坛

标题: 黑苹果从入门到精通 篇三:在Intel电脑上安装macOS 10.14 Mojave [打印本页]

作者: beyes    时间: 2019-11-16 00:00
标题: 黑苹果从入门到精通 篇三:在Intel电脑上安装macOS 10.14 Mojave
本帖转载:出处,由于原帖图片无法直接显示,在此贴出含图帖子。

声明
本教程仅用作学习或个人使用,严禁将黑苹果安装作为商业牟利手段,以出售黑苹果安装服务进行交易。

个人非常讨厌那些在闲鱼、淘宝上出售黑苹果安装服务的商家,原因有很多:一、安装方法、启动器、驱动程序均非淘宝商家开发;二、淘宝商家安装黑果实际效果很差,仅仅做到能用,而不是好用,各类驱动和DSDT/SSDT都不一定给你装上,更别说以后的系统升级等等;三、此类商家水平层次不齐,我可以确认绝大部分的人只是略会皮毛,你来咨询他会试试,不成功就取消这次交易,成功就薅一波羊毛,稳赚不赔;四、黑苹果本来就不为Apple公司支持,好奇、喜欢折腾,研究为自己安装无口厚非,但是作为商业业务显然是存在问题的,所以请大家不要去淘宝、闲鱼购买此类服务,也不要去淘宝进行付费咨询之类,有问题,去tonymacx86等专业论坛学习、发帖提问。

现在黑苹果越来越简单,工具和驱动都在不断丰富,只要你认真读懂了这篇文章,机器是近三代常规硬件(N卡不行),一般都可以实现黑果,难度很小,全文很多关于Clover的设置选项及功能都是我自己研究、尝试得出的资料,全部看懂可以省下你一两年的折腾。

本文所用机器为一台刚组装的电脑,我也没有试过是否能成功,所以翻车了也说不定。

配置环境

macOS 10.14.3 Mojave

本机电脑配置

处理器:intel i7 6400T
主板:华擎Z170 OC Formula
内存:海盗船DDR4 3000 C15 8G
固态:三星SM961 256G
显卡:蓝宝石RX 570超白金

准备工具

1. Clover Configuration

2. Clover v4658 or newer/newest Clover of RehabMan Build

3. 8G+U盘一只

4. 支持UEFI启动的目标电脑,CPU要求Ivy Bridge及更新的处理器,Sandy Bridge及更老处理器请自行研究

关于硬件的兼容性问题
在开始之前我要简单谈谈关于硬件的兼容性问题,

一般来说本文只要是Ivy Bridge之后的CPU都没什么问题,如果是SandyBridge处理器,由于Mojave不支持Sandy Bridge平台安装,请在Clover Boot arguments中添加 -no-compat_check 来跳过Mojave的兼容性检查。

固态方面:NVME固态包括但不限于建兴、海力士等部分型号和三星PM981,这些固态的主控macOS不认,所以安装根本找不到,SATA固态则没有这个问题。

显卡方面:目前只推荐Intel核显和AMD RX460/470/480/560/570/580和Vega 56/64,需要注意2048sp的RX 580是不能用的。

创建macOS Install USB Drive

从这篇文章起,我们就真正的开始进入安装黑苹果的阶段,现在我们已经知道,一台Intel处理器的电脑安装黑苹果,实际上是由BIOS Legacy或者UEFI引导第三方EFI启动器,例如Clover,来实现启动macOS。目前最主流的方案是UEFI+Clover创建、安装、引导macOS Mojave,所以我们首先需要创建macOS Mojave的安装U盘。

很多人不明白为什么我要在第一篇文章中使用U盘来安装虚拟机macOS Mojave,而不是使用vmdk硬盘镜像。事实上这种安装方法能节省我们创建U盘的时间,不需要再下载第二次macOS安装镜像文件。对于我们来说我们直接将U盘连接到虚拟机macOS中,然后在U盘的EFI分区中安装Clover即可。

但是为了让手头有Macbook Pro等设备而没进行第一篇安装虚拟机操作的人也能创建黑苹果安装U盘,我将会讲解一次从空白的U盘到创建U盘镜像的完整过程,已经按照第一篇文章使用U盘安装虚拟机的可以跳过这个步骤。进入下一段!



首先,我们下载最新版本的Mojave,这可以从App Store中下载

App Store下载Mojave

弹出偏好中的系统更新,然而不知道为什么下载失败,不清楚是否由于虚拟机环境造成,实体机应该不会有这样的现象。


失败

故我只能剑走偏锋,经过google搜索 how to reinstall mojave,我发现了一个小软件名为 macOS Mojave Patcher。通过Patcher内置的 Tools 可以下载 Mojave。

macOS Mojave Patcher

确认后即可开始下载。


总体来说下载速度并不慢


下载完毕后在 /Application 目录下就可以找到Install macOS Mojave的安装器。我们既可以使用macOS Mojave Patcher创建U盘,也可以用命令行创建,我两种方法都演示一遍:

首先是 macOS Mojave Patcher,点击左边的 icon,跳出选择安装app,我们选择/Application/Install macOS Mojave,点击打开。

在软件中可以直接烧录


选择Mojave安装文件

接着再点击右侧的Target Disk,选择U盘为目标磁盘,接下来点击Start Operation就开始烧录了。

安装到对应磁盘

第二种方法是使用Terminal创建,需要对命令行有一定的熟悉。

首先将U盘插入虚拟机或者MacBook Pro,打开macOS自带的Terminal终端,输入diskutil list ,输出如下图所示。

查看磁盘分区

从图中可以看出,我的电脑有3个磁盘,disk0是真正的物理磁盘,分为两个分区,disk0s1 是 EFI 引导分区,disk0s2 则是 APFS 文件系统的容器,这个容器虚拟化成disk1,再在其中分为4个分区,分别为安装系统的Macintosh HD、不知道干什么用的Preboot、恢复使用的Recovery分区和最后描述APFS文件虚拟化的VM分区。而disk3则是我的U盘,所以现在我们已经知道了disk3是我们要操作的对象。

  1. diskutil partitionDisk /dev/disk3 1 GPT HFS+J "install_osx" R
复制代码


diskutil 是磁盘管理命令,partitionDisk 表示对目标磁盘进行格式化,/dev/disk3则是U盘对应的硬件名(因为在Unix下任何硬件都对应着一个文件),1表示除EFI分区外只留下一个分区,GPT意味着使用GUID分区图,HFS+J使用HFS分区文件系统,install_osx则是格式化后的分区名。输出结果如图所示:我们已经创建了一个200M+的EFI分区(苹果引导EFI区必须要大于200M)和一个15.7GB的分区。


划分U盘分区

接下来我们要使用命令创建安装U盘。输入以下命令:

  1. sudo /Applications/Install macOS Mojave.app/Contents/Resources/createinstallmedia --volume  /Volumes/install_osx --nointeraction
复制代码

sudo表示调用超级管理员权限,意味着等会儿执行命令需要输入账户密码,后面跟的/Applica->media则表示使用这个路径的命令,—volume 后面的表示目标分区为U盘。执行命令后将会格式化U盘并 COPY 系统安装文件。


烧录完成

作者: beyes    时间: 2019-11-16 00:24
标题: Create Clover EFI and Configuration
接下来我们需要对U盘的EFI分区安装Clover,这里既可以使用sourceforge上托管的Clover master branch,也可以使用其他人fork的Clover分支,我比较习惯使用RehabMan在Bitbucket上fork的CloverRM版,诸位可自行下载。打开Clover,点击继续,确认许可协议

+
Clover-1


Clover-2

接下来我们选择更改安装位置,选择我们的U盘。


修改安装位置


定位到U盘

点击继续重新回到上级界面,这次我们选择自定。


选择自定安装

自定的内容非常多,我们需要详细讲解一下:

Clover自定安装

由于我们使用 UEFI 启动而非 BIOS Legacy,所以勾选仅安装UEFI开启版本,与此同时安装 Clover 到 EFI 系统区也会自动勾选,Bootloader 和 CloverEFI 则无法选中(因为这两项是跟BIOS Legacy启动有关,如果想BIOS引导安装请自行研究),勾选开机主题,这样我们的启动界面能设置各式各样的主题更换。勾选 UEFI 开机版本后,BIOS Drivers 和 FileVault 2 BIOS Drivers 也会自动隐藏。


配置主题

接下来就是最最重要的UEFI Drivers配置,点击左侧的三角箭头展开如下图所示:

配置UEFI Drivers



































总结一下,这里面目前最重要的就是 config.plist/kexts/drivers64UEFI 这三位,接下来我们就需要找到一个相近的 config.plist 文件来替换现有的 config.plist,因为自己研究 config.plist 的写法太繁琐太困难,我们只要找到类似的 config.plist 进行小小的修改更加方便。这就是为什么很多人推荐如果打算进行黑苹果,最好能找已经有人配置成功的类似配置进行组装DIY,因为别人成功表示你也大概率可以,而且它的 config.plist 你可以借鉴甚至直接拿来用,省心省事儿,像我更愿意有一位大牛在前面帮我做好引导,我只需要简单拿来用就好。

RehabMan 的 github 上有 OS-X-Clover-Laptop-Config 库,诸位可以自行寻找相近配置进行替换,本机采用Intel io7 6400T处理器,内置HD 530核显,应该是比较容易驱动的,但是这次我用了一张RX570,故没核显什么事情,所以我选择了同为14nm架构的Skylake中选择config,最终选择了config_HD515_520_530_540.plist。复制到Clover文件夹中重命名为config.plist替换原有文件。
作者: beyes    时间: 2019-11-16 10:13
标题: 对 Clover 的进一步配置
接下来我们需要安装Clover Configuration来对EFI中的Clover进一步配置。Clover Configuration界面如图所示:

Clover Configuration

打开EFI分区中的config.plist,如图所示:

ACPI

在左侧标签栏中选择 Boot,Boot Argument保留-v dart=0和debug=0x100,Timeout改为-1,其他随意,Timeout是关于Clover引导时的等待时间,-1表示一直等待除非你选择某个启动。

Boot

这里也要详细说明下 Boot Argument,你可以理解为启动参数,不同的启动参数用于开启不同的功能,有些 kext 也需要启动参数进行配置,右键可以添加。

Argument



























在 CPU 选项卡中,如果是 Skylake 以上的处理器(第6代)可以开启 HWPEnable,勾选圈圈中的两个选项即可启动。


Disable Drivers 选项卡中的设置则和之前的Driver64UEFI息息相关,如果在这里添加了某个Drivers,那么即使在前面那个文件夹中有efi,也不会被引导,RehabMan 的配置文件中默认关闭 VBoxHfs,因为太老了,性能较差,我们在接下来会下载 HFSPlus-64 替代。

Disable Drivers

GUI 选项卡一般不需要做大改动,如果要引导 Linux,请勾选 Scan 下的 Linux,在右侧可以配置主题,例如我们这里选择 BGM 作为主题,最右边还可以隐藏 Volume,一般情况下我们隐藏 Preboot 和 Recovery。

GUI

在 Graphics 中我们可以对显卡进行ID注入,Intel核显用户请输入正确ig-platform-id并勾选inject Intel,具体ig-platform-id可以参考黑果小兵整理的Intel核显platform-id,由于我们是AMD RX 570 4G,除了要在kext包中添加WhateverGreen之外,还需要勾选RedeonDeInit,具体原因参照Tonymacx86-Post Install-Graphics-Radeon Compatibilty Guide As Follow:
Many modern AMD GPUs are incorrectly initialized during boot phase, which will can lead to serious issues in OS X (e.g. boot to black screen or crash after sleep/wake). This was first solved by the WhateverGreen Lilu plugin. Extensive research has been done by Mieze, resulting in a DSDT patch. This knowledge has been incorporated into Clover (starting with rev. 4296) and can be enabled from the config.plist

Inject ATI和Inject NVidia一般都不用勾选,这是对老显卡的支持。


Graphics

Kernel and Kext Patches 则是一些高手们定制出来的补丁,通过这种方式进行热修复,这里要说下比较关键的MSR 0xE2问题,在真实的Mac电脑上,OSX XCPM PowerManagement需要对BIOS中MSR 0xE2这块区域进行读写,然而,很多主板把这个区域锁了起来,不允许读取修改,ASUS主板印象中是全线都锁,所以这就导致了Kernel Panic,根本无法引导,以前很多人说技嘉的主板容易黑,那就是因为技嘉几乎全线都是Unlock的,所以我们经常会说到BIOS中的CFG Lock需要Disable。但很多主板BIOS中根本没有这个选项,

第一种方法是 CodeRush 开发的 UEFIPatch 可以让我们解锁 MSR 0xE2 选项,但是相对比较麻烦

第二种方法我们可以在 KernelToPatch 中添加由 Pike R.Alpha 的 “xcpm_core_scope_msrs” 补丁,并且勾选 kernelPM,补丁如下:

Find: 31 d2 e8 91 fc ff ff
Replace: 31 d2 90 90 90 90 90


Kernel and Kexts to Patch

SMBIOS 代表你这个机器的型号,点击圈圈内的按钮可以选择不同的机型,尽量选择同代CPU机型仿冒,这里我选择同为Skylake架构的iMac 17,1。

SMBIOS 代表你这个机器的型号,点击圈圈内的按钮可以选择不同的机型,尽量选择同代 CPU 机型仿冒,这里我选择同为 Skylake 架构的 iMac 17,1。

回到Rt Variables,我们点击 Generate 创建ROM

RT Variable

最后在 System Parameters 中我们 Generate UUID,在 inject Kexts 中选择Detect,这里Detect表示如果在/System/Library/Extensions或者/Library/Extensions文件夹中有同样的kext,clover 就不会注入,如果没有,就会注入,个人觉得最好,而Yes表示无论如何都注入,No 表示不注入kext。

System Parameters

Clover Configuration的左下侧则是一些小工具,例如Mount EFI可以非常方便的挂载系统和U盘的

EFI分区


Mount EFI

Install Drivers 则可以非常方便下载 EFI Drivers,我们这里就需要使用这个工具下载 HFSPlus-64.efi,否则在Clover中我们根本看不到 Install Mojave。

Install Drivers

kexts Installer 中我们可以非常方便的下载一些必要的Kexts,需要注意,OS Version 要选择Other,这样所有的kext都会被下载到Kexts/Other文件夹下。我们这里需要 Lilu/WhateverGreen/FakeSMC/USBInjectAll:

Kexts Installer

简单的说一下这些Kext各自的作用,为了大家能理解作用,请详细阅读下段文字,挑选自己需要的kext!
































这块主板是Intel i219-V的网卡,所以还需要额外安装IntelMausiEthernet。这些都可以在tonymacx86上下载到。最终Kext文件夹如图所示,只要能安装就好,完善之后再做。


驱动目录

Intel核显用户特别注意,Broadwell 和 Skylake 处理器在 macOS 下都要求 DVMT-Prealloc 最起码在64M及以上,但是很多BIOS都不支持更改,所以config中一般默认添加了一个minStolenSize的patch,将 macOS 的要求从64M改为32M,它在config.plist/Devices/Properties/PciRoot(0)/Pci(0x02,0)中存在。


作者: beyes    时间: 2019-11-16 22:58
标题: 设置BIOS





















欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2