目录
问题三 在恢复镜像执行“reinstall” 时提示:“无法与恢复服务器取得联系”
最近需要使用MacOS系统,但家里并没有macbook。遂安装黑苹果,之前没有折腾过黑苹果所以这里记录以示备忘。由于对macos的了解有限可能有认识错误的地方。
基础知识
由于没怎么玩过macbook,只知道macos不像windows那样方便的安装在非apple硬件上。所以解决这个的方法是引导程序。如clover\opencore。 目前opencore使用的更多一些所以这里就只说明opencore
引导:opencore
说明
-
EFI Boot Loader: OpenCore 本身是一个 EFI 应用程序(通常是 OpenCore.efi),它作为 Unified Extensible Firmware Interface (UEFI) 引导过程的一部分执行。UEFI 是现代计算机的替代 BIOS 引导标准,提供更高级的功能和安全性。
-
配置与个性化: OpenCore 的功能很大程度上取决于其配置文件 config.plist,该文件包含了引导不同操作系统的设置、硬件特定的补丁、驱动程序加载(kexts)、ACPI 表注入、SMBIOS信息设置等。用户可以根据自己的硬件和需求定制这个配置文件。
-
驱动注入与补丁: OpenCore 支持动态加载内核扩展(kexts),如 Lilu 和 WhateverGreen,以解决硬件兼容性问题。它还可以注入或修改ACPI表和SMBIOS信息,使非苹果硬件能更好地模拟苹果硬件环境,这对于在非原生硬件上运行macOS至关重要。
-
安全与兼容性: OpenCore 设计时强调安全性与兼容性,遵循行业标准并支持UEFI安全启动。它通过验证签名的引导加载程序和驱动程序来增强系统的安全性,同时保持对各种硬件配置的广泛兼容性。
-
多系统选择界面: OpenCore 提供了一个图形化的启动菜单,允许用户从多个操作系统中选择进行引导。这包括macOS、Windows、Linux等,使得在同一台机器上管理多系统变得简单直观。
-
引导流程管理: 在选择了要引导的操作系统之后,OpenCore 负责加载必要的驱动程序、应用必要的修补程序,并将控制权传递给所选操作系统的内核。这一过程中,OpenCore 会根据配置文件中的指令执行一系列预引导任务,以确保操作系统的顺利加载。
总的来说opencore包括两大部分:
EFI 用来注入驱动补丁模拟苹果硬件环境。主要就是对它的修改来支持各种非苹果硬件。
BaseSystem.img macOS恢复环境的映像文件,用来安装黑苹果
OpenCore使用
按照: Getting started with OpenCore | OpenCore Install Guide 进行制作引导。英文比较吃力可以参考中文翻译如:OpenCore安装指南
注意:最好每一章节都阅读,因为有很多的细节需要注意,如smbios。
大致流程:
制作引导U盘 --> 添加Driver和Kexts --> 根据硬件编辑配置文件pconfig.list --> 引导硬件进行安装OS --> 修补和美化
这里按照硬件Acer 4750安装黑苹果过程中遇到的坑说明备忘:
问题一 Opencore进入引导后没有有线网络
硬件:(博通)BCM57785
现象:有线网卡( BCM57785)引导中显示有线已连接,但无法分配IP,也无法访问内外网
原因:opencore相关网络驱动有问题
解决:添加如下三个kext
BCM5722D.kext
FakePCIID_BCM57XX_as_BCM57765.kext
FakePCIID.kext
注:但当安装MacOS 11时以上驱动失效无法使用。
问题二 Opencore进入引导后没有无线网络
硬件:AR5B97
现象:无线无法打开或搜索不到信号
原因:opencore相关网络驱动有问题
解决:使用如下kext
HS80211Family.kext
AirPortAtheros40.kext
问题三 在恢复镜像执行“reinstall” 时提示:“无法与恢复服务器取得联系”
现象:
原因:可能性有几种:1、网络问题 2、镜像索引问题 3、系统时钟问题 4、恢复镜像问题
解决:按上原因依次排查。
排除网络问题:打开终端
bash-3.2$ ping 192.168.1.1 //ping网关看是否通畅
bash-3.2$ ping www.baidu.com //ping百度看是否可以访问外网
排除镜像索引问题:打开终端
bash-3.2$ nvram IASUCatalogURL=https://swscan.apple.com/content/catalogs/others/index-10.16seed-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog
//执行完毕后,重试安装系统,如有问题继续如下
排除系统时钟问题:打开终端
bash-3.2$ ntpdate -u time.apple.com //如果返回ntpdate: command not found则执行下一条
bash-3.2$ sntp -sS http://time.apple.com //如果返回sntp: command not found则执行下一条
bash-3.2$ date 1018051520 //1018051520为时间戳
//执行完毕后,重试安装系统,如有问题继续如下
恢复镜像问题: 尝试手动安装,打开终端
bash-3.2$ cd /Applications/Install\ macOS\ XXX.app/Contents/Resources/
bash-3.2$ ./startosinstall --volume /Volumes/Target # /Volumes/Target为要安装的磁盘分区
总结: 在Acer 4750上安装High Sierra时使用1、2解决了该问题。 安装Big Sure是使用1、2、3、4解决了该问题。
问题四:是否可以安装高版本的MacOS
opencore上面有根据机型硬件已经推荐了macos的版本,但其实可以安装其他版本的,如这台机器有网友安装上了Big Sur.
但使用其镜像制作的引导,无法引导。最终结合官方文档我的4750也使用上了Big Sure(11.7)
关于安装后
系统安装后,我觉得有俩个地方是必须要做的,参考opencore安装后
1、修复GPU
如果不修复GPU,老机器上打开macos界面是非常卡顿的,所以还是有必要修复一下。
2、引导转移到U盘
把EFI分区转移到系统硬盘上,这样就不需要每次都插入u盘引导了。 这里
关于OpenCore Legacy Patcher
Opencre Legacy Patcher一个带GUI的opencore引导生成工具。但是它只有MacOS的安装包,所以它无法在Windows或Linux上运行构建opencore。
这就出现了“先有鸡还是先有蛋”的问题。在先天没有macos的pc,notebook上安装黑苹果还是要自行构建。由于已经制作好了opencore才发现次项目遂没有研究该工具
注:在随后安装成功的笔记本尝试使用Opencre Legacy Patcher构建新的opencore引导,发现构建出来的无法启动,遂放弃
附件
制作好的acer 4750的引导,老笔记本又可以发光发热了..
https://pan.baidu.com/s/1UnEt1eDRm0u8PLMocQMBcQ?pwd=8quu 提取码: 8quu
目录结构
.
├── EFI
│ ├── BOOT
│ └── OC
├── GenSMBIOS.zip
├── OpenCore-1.0.0-RELEASE.zip
├── ProperTree.zip
├── com.apple.recovery.boot
├── readme.txt
└── update.sh
参考
十年老机器最后的挣扎——Acer Aspire 4750g基于opencore0.7.0安装Catalina和Big Sur-远景论坛-微软极客社区
GitHub - iChinxu/Acer-Aspire-4750-OpenCore: OpencCore config for Acer Aspire 4750 series.