本文介绍了如何在普通电脑上安装苹果的MacOS(黑苹果),毕竟安装Windows和Linux太简单了


使用OC-Gen-X生成主要的驱动

您可能需要一台装有mac的设备运行OC-Gen-X,如果没有,也可以在Github上找相似的,直接跳到[获取镜像与安装]这一步
获取OC-Gen-X,一步步走完
我们只需要知道硬件信息就行,但是只有mac版本,如果您没有mac的话,可以使用VMware虚拟机运行,网上教程非常多不再赘述

选择处理器需要考虑主板和其他因素,我发现很多人像我一样存在魔改主板的问题,比如我的电脑是i3 9100f(b0),但是主板是Z170,实际上9100f是无法安装到z170上的,但是9100f(b0)是i5 7500的马甲,刷了微码当成7500塞到主板上的,所以选7代(KabyLake),这种问题一般会出在台式机上,推荐台式机如果用独显启动的话推荐伪装的型号选择不挑CPU的MacPro,如果是集显的话再iMac里面选

Kext的第一个Essential全部勾上

Kext-VirtualSMC Plugins 选SMCProcessor、SMCSuperIO和SMClightSensor,SMCBatteryManager可能不生效或者导致一些问题

Kext-Graphics 选WhateverGreen

Kext-Audio 选AppleALC,但是需要查看支持列表确定设备声卡是否支持,需要自己调试layout-id,如果可用,更推荐VoodooHDA驱动,还不行的话只能USB声卡了

Kext-Ethernet根据自己都设备选

Kext-USB 选USBInjectALL

Kext-Wifi and bluetooth 如果是博通卡就5选4,如果是英特尔网卡需要itlwm,更推荐AirportItlwm,和IntelBluetoothFirmware

Firmare Drivers-UEFI 选OpenRuntimehe HfsPluse

SMBBIOS根据自己都需求选
选完就可以Generate EFI


生成APCI

需要SSDTTime

注意安装Python时勾选tcl/tk库

第一次运行需要下载一些东西,建议挂加速器
按8 Dump DSDT,提取DSDT.aml
按1 FixHPET,生成SSDT-HPET.aml
根据设备,台式机是2,笔记本是3生成SSDT-EC.aml
按4生成SSDT-PLUG.aml
如果是300系列主板,按5
按6 AWAC Disable,可能会找不到AWAC设备,就不生成文件
按7生成SSDT-USB-Reset.aml
这一步生成的文件与上一步的生成驱动的文件夹合并


更新ACPI文件列表

下载ProperTree
启动ProperTree.bat,File-Open

选择有config.plist的文件夹,再File-OC clean snapshot,选择放config.plist的文件夹,然后退出


完善config.plist

使用文本编辑器(不要用记事本)打开config.plist
搜索boot-args,

1
在<string></string>中间写上keepsyms=1 -v debug=0x100

如果使用AppleALC,还需要在上一句话后加上alcid=3,加debug=0x100 内核崩溃后不重启,加-v 开启跑代码(啰嗦)模式 ,加keepsyms=1是遇到致命错误需要重启的错误就卡在这里,就方便排除错误
搜索prev-lang:kbd,

1
把<data></data>中间的内容改为emgtSGFuczoyNTI=

设置显示设备

注意:Mac不支持VGA和DVI
如果那有核显并且使用核显输出的话我们需要进行这一步操作,建议备份config.plist后再操作,查看列表根据自己的设备设置

笔记本的i5 4210u HD4400的配置是这样的
注意OC-Gen-X的默认语言是俄语,要改语言的话,在notepad++中修改 prev-lang:kbd,改为emgtSGFuczoyNTI=


检查配置文件

把config.plist上传到OpenCore Sanity Checker,改到全部通过


设置BIOS

参考,禁用CSM、禁用安全启动、将操作系统类型设置为其他操作系统、将SATA设置为AHCI、禁用CFG锁定、禁用英特尔虚拟化技术/ VT-X、禁用VT-D、启用XHCI Hand-off,禁用USB键盘和鼠标模拟器
当然其实要求也没那么严格,比如我用的HDMI转VGA的头,被BIOS发现不能用UEFI,但是实际上还是UEFI启动成功了
有些设置如果在BIOS里面改不了可以改配置文件加参数什么的
禁用:CSM、安全启动、快速启动、虚拟化、Intel SGX、CFG LOCK
开启:超线程、Above 4G decoding、Execute Disable Bit(执行禁止位)、EHCI/XHCI Hand-off、Legacy RTC Device
SATA设置为AHCI


获取镜像与安装

黑果小兵镜像站下载喜欢的dmg,然后使用etcher写入U盘镜像,最后用Diskgenius删除Fat分区的EFI文件夹后再复制配置文件EFI


安装Mojave中的可能遇到的问题

磁盘工具格式化磁盘,如果用SSD选APFS,如果用机械硬盘选MacOS日志
提示这个“安装macOS Mojave”应用程序副本已损坏,不能用来安装macOS
拔掉网线,打开终端,输入

1
date102400002019.00

安装完成后完善ACPI

OC-little参考
大部分通用的ACPI

1
2
笔记本背光亮度调节 SSDT-PNLF.aml SSDT-ALS0.aml
睡眠秒唤醒 SSDT-GPRW SSDT-UPRW

不通用的ACPI

1
2
3
4
5
电量显示0 SSDT-BATT.aml
节能 SSDT-PLUG
禁用独显 SSDT-DDGPU.aml
解除USB端口限制 SSDT-EC.aml
苹果原生电源管理SSDT-PLUG.aml

使用Opencore Configurator内置的一些
也可以使用Clover,先按F4 Save oem DSDT Save,然后按F5 patched DSDT,接下来就可以在U盘里找到DSDT了


需要的软件

Iasl-win
GibMacOS
OC-Gen-X
检查配置
SSDTTime
GenSMBIOS
ProperTree
Hackintool

Intel® Power Gadget
MaciASL
HIDPI
RDM


其他笔记

允许任何软件;来源

1
sudo spctl --master-disable

双系统时间不同步

1
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

忽略更新

1
2
3
4
5
sudo softwareupdate --ignore "macOS Catalina"
sudo softwareupdate --ignore "macOS Big Sur"
sudo softwareupdate --reset-ignored
defaults write com.apple.systempreferences AttentionPrefBundleIDs 0
killall Dock

相关链接

OC官网