珂珂的个人博客 - 一个程序猿的个人网站

PVE安装MacOS 14

最近的amd 5800H 小主机来折腾下

首先下载mac os 的iso包, 这里要去网上搜,虽然大都是需要付费的。 了解到有几种包

ipsw 是apple芯片专用的

PKG格式的软件包是最常见的Mac安装包格式。你可以直接将PKG文件拖拽到“应用程序”文件夹下,然后双击运行安装程序,按照提示完成安装即可。

DMG 是macOS磁盘映像

iso和cdr 是虚拟机可用的

首先去找一个iso 安装包

然后去github上下载pve 的openCore引导,地址是Releases · thenickdude/KVM-Opencore (github.com) 下载OpenCore-v21.iso.gz 然后解压得到iso文件即是pve openCore引导

顺便下载EFI文件夹,即OpenCoreEFIFolder-v21.zip      安装好后会用到

然后登录pve管理页面

将这两个iso上传到local 的ISO镜像

然后创建虚拟机,名称随意

选择操作系统Other,不使用任何介质

然后显卡选择VMWare兼容、Qemu 代理勾上,机型Q35、BIOS 选UEFI、EFI存储选上、预注册密钥取消勾选

然后总线选VirtIO Block  缓存选Write back、磁盘大小输入合适的大小(32太小)、启用IO thread 以支持 TRIM

然后核心数输入双数,CPU设置为Haswell或Penryn

内存 8192  太小也不行

网络选VirtIO  半虚拟化

然后点击完成。

然后回到虚拟机硬件删除CD/DVD

然后添加CD, 选择之前下载解压的openCore iso总线一定要填0

再添加一个CD  选择macos安装iso

然后去pve的ssh   输入下面代码,作用是避免循环引导

echo "options kvm ignore_msrs=Y" >> /etc/modprobe.d/kvm.conf && update-initramfs -k all -u

然后编辑 /etc/pve/qemu-server 的对应虚拟机ID 的conf文件

我的是AMD在开头处加入

args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device qemu-xhci -device usb-kbd -device usb-tablet -global nec-usb-xhci.msi=off -global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off -cpu Haswell-noTSX,vendor=GenuineIntel,+invtsc,+hypervisor,kvm=on,vmware-cpuid-freq=on


注意intel cpu会不同,不同macos系统也可能有差异

然后media=cdrom  替换为cache=unsafe

保存退出

然后调整引导顺序,将openCore的引导Iso 放第一个

然后就可以开机了。


没出现opencore 安装masos 菜单不用慌

进入第一个shell 后输入  fs0:

回车然后再输入  System\Library\CoreServices\boot.efi

回车就进入到苹果界面了

等一会点击Disk Utility  点继续选择磁盘点击右上角Erase 进行格式化,格式默认

Name 随便输入如mac

然后正常安装即可,安装过程中全点击否  稍后设置之类的不登录APP ID。


安装后把EFI 放到系统盘就可以不需要那2个CD 了

有教程说去GitHub - corpnewt/MountEFI: An even more robust edition of my previous MountEFI scripts  

下载MountEFI

然后

cd ~/Downloads/MountEFI

chmod +x MountEFI.command

./MountEFI.command

但我试过好像不行,直接打开MountEFI.command 也不行

我用的另一种方法

去github下载 Hackintool

GitHub - benbaker76/Hackintool: The Swiss army knife of vanilla Hackintoshing

解压zip后放到NAS 共享盘,这个暂时没用到,不过后面定制EFI会用到

再去github下载OCAuxiliaryTools

Release 20240001 · ic005k/OCAuxiliaryTools · GitHub

下载 OCAT_Mac.dmg   也放到NAS 共享盘

然后再MAC 系统中访问共享盘把 OCAT_Mac.dmg 托到桌面

点击菜单中的Mount ESP 把系统EFI 盘挂载, 点击mount 输入密码

题外,我使用下面这个Backup  EFI to Desktop  备份的EFI是空的?即使挂载了系统EFI 再备份也是空的?

然后回到Finder  左边会有一个EFI   点击后是个空的。

 把之前下载的EFI Folder即OpenCoreEFIFolder-v21.zip 解压后放上去,注意需要EFI 文件夹

像下面这样

之后关机,移除两个CD/DVD  调整引导顺序就可以开机重新使用了。

步骤参考Running a MacOS 14 Sonoma VM in ProxMox VE (i12bretro.github.io)


现在面临一个问题,如果macos出问题或修复EFI导致无法启动,没有PE 来修复它。我也没找到怎么来操作pve虚拟机下的磁盘方法。为此我还花16块买了个vip  下载三分区系统,下载下来是zst 格式,该格式是pve的备份格式,可以用来pve还原。

但发现在5800h  小主机上进PE 无限重启,但是在Intel  1135G7那个小主机就正常。后来研究发现在上面安装好的macos 虚拟机上附加一个CD/DVD   的PE  iso文件可以启动到PE 菜单,刚开始WePE_64_V2.3.iso  就是不行,其实在windows 中也无法打开这个文件,

但当时也没怀疑是这个文件有问题

后来换了个FirPE  去官网下载exe  运行后生成iso即可,数据分区格式我选的NTFS

然后把这个iso 上传到PEV  local中,我用CD/DVD  添加这个iso 到之前安装好的macos 然后改变启动顺序,发现可以进入PE启动菜单,但是还是无限重启。然后尝试把它添加到win10的虚拟机中,发现可以正常启动进入到PE桌面也不会无限重启。、

那么怀疑这个虚拟机 conf 配置差异,于是对比win10 的conf 和macos的conf 差异,路径在/etc/pve/qemu-server

最终不断尝试发现macos 去掉顶部的

args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device qemu-xhci -device usb-kbd -device usb-tablet -global nec-usb-xhci.msi=off -global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off -cpu Haswell-noTSX,vendor=GenuineIntel,+invtsc,+hypervisor,kvm=on,vmware-cpuid-freq=on

然后

cpu: Penryn改为cpu:host  就可以解决无限重启进不到pe桌面的问题,进入PE桌面后可以用DiskGenius Pro 修改mac系统盘的EFI   ,修改完后再改回conf  加上args和改回cpu:Penryn  就可以启动macos系统了。
又再次发现WePE_64_V2.3.iso 在windows可以打开了,但还是无法进PE菜单,重新制作WePE_64_V2.3.iso ,发现又可以用了,能进入到PE桌面.....





上一篇:个人代码全部开源

下一篇:PVE 中LXC的Ubuntu安装minikube


0 评论

查看所有评论

给个评论吧