因某些需求需要云Mac,记录一下折腾过程
一、准备工作
- OpenCore引导器
OpenCore 是一个开源的引导加载器,广泛用于黑苹果(在非苹果硬件上运行 macOS)项目。与常用的 Clover 引导器相比,OpenCore 支持更现代的 UEFI 启动方式,具有更高的可定制性和兼容性。它能够更好地模拟苹果硬件环境,提升 macOS 的稳定性和原生体验。
相比于其他引导器,OpenCore 的优势主要如下:
- 更强的硬件兼容性,适配新旧平台
- 更完善的安全性和原生功能支持(如 FileVault、iMessage 等)
- 配置灵活,易于维护和升级
- 社区活跃,文档丰富
OpenCore 已成为目前黑苹果领域主流的引导方案。
本教程使用的OpenCore项目链接:https://github.com/thenickdude/KVM-Opencore
在Release页面下载.iso.gz
结尾的镜像文件即可,下载完后解压出ISO文件以供后续使用,该OpenCore当前最新支持Ventura
也可以用其他适配好的项目或自己配置
- OSX镜像
这里使用OSX-KVM
项目的镜像下载脚本,需提前安装python3
脚本地址:https://github.com/kholia/OSX-KVM/blob/master/fetch-macOS-v2.py
下载完后控制台执行:
python fetch-macOS-v2.py
选择Ventura
,等待下载完毕,下载完后是苹果的BaseSystem.dmg
文件,需要用dmg2img
工具转换一下
安装dmg2img
:
archlinux直接执行:paru -S dmg2img
,其他发行版问AI
然后执行:
dmg2img -i BaseSystem.dmg BaseSystem.img
就得到img系统镜像了
最后将OpenCore
和BaseSystem.img
上传到PVE中
二、创建虚拟机
阶段1
进入PVE控制台,点右上角创建虚拟机
操作系统:
类别选Other
,ISO镜像选择OpenCore
系统:
显卡选择VMware兼容
,机型选择q35
,勾选QEMU代理
,BIOS选择OVMF(UEFI)
,不要勾选预注册密钥
磁盘:
总线设备选择VirtIO Block
,磁盘大小最低32G
CPU:
类别选Haswell
,核心数量需要是2的幂,例如2、4、8、16等
网络:
模型选择VirtIO (半虚拟化)
确认创建,此时不要启动,进入虚拟机的硬件配置,添加CD/DVD驱动器
,把BaseSystem.img
加进去
还要做一些特殊配置,PVE的界面无法直接配置,需要进入shell改配置文件
记下虚拟机的编号id,例如100
阶段2
进入PVE的shell,执行下面的命令避免循环引导
echo "options kvm ignore_msrs=Y" >> /etc/modprobe.d/kvm.conf && update-initramfs -k all -u
编辑配置文件/etc/pve/qemu-server/100.conf
,这里的100
改成你的虚拟机id
根据你的CPU型号在开头加入下面配置:
# Intel处理器
args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc
# AMD处理器
args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -global nec-usb-xhci.msi=off -cpu Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,check
如果您的 CPU 不支持+invtsc
功能,或者您希望能够在 Proxmox 节点之间迁移正在运行的虚拟机,您可以从 -cpu 列表中删除+invtsc
功能。
在 AMD 上,您可能会发现安装程序在加载时重新启动,或者没有出现加载栏,如果是这样,请将-cpu host
替换为-cpu Haswell-noTSX
将ide的两行的media=cdrom
改为media=disk
保存退出
最后在虚拟机选项中确认引导顺序,将OpenCore
排在第一位
三、安装系统
启动虚拟机,进入OpenCore
的引导界面
选择Base System
进入
选择磁盘工具,点Continue
,选择你要安装的目标磁盘,点右上角抹掉
,格式选APFS
,方案选GUID分区
,点抹掉
开始格式化磁盘
然后退出磁盘工具,选择Reinstall maxOS
开始安装OSX,选择刚刚格式化好的磁盘,等待安装完成自动重启
因为要从网络同步,安装过程可能会比较久
要重启4次
第一次重启后在OpenCore
引导界面选择Install
,第二次也是选择Install
,第三第四次就没有Install
选项了,直接进系统即可
最后安装成功
四、使用体验
当前PVE上的OSX体验并不算流畅,仅仅是可用的水平,后面可能会尝试添加AMD显卡来增强图形性能,看看体验会不会更好,待续...