之前在 Proxmox VE KVM 虚拟化 macOS 中成功新建了 Catalina 虚拟机,Big Sur 则需要改动一些配置步骤

实测 Big Sur 虚拟机没有 Catalina 流畅

下面将展示创建 Big Sur 虚拟机时需要做出的改动

环境

  • Proxmox VE 6.2

参考

步骤

Big Sur 的安装步骤与 Catalina 有两点不同

生成安装镜像

镜像创建需要克隆 thenickdude 源,此源是作者 nicksherlock 对 kholia/OSX-KVM 的魔改 fork,支持创建 BIgSur 的离线安装镜像(仅限 macOS),Linux 下只能创建 BaseSystem 镜像(安装时需要互联网连接下载 Big Sur)

  1. 安装依赖
    xcode-select --install 
    # Linux 
    # sudo apt install g++ git qemu-utils libxml2-dev libssl-dev zlib1g-dev cmake libbz2-dev libfuse-dev fuse autoconf unzip
  2. 克隆镜像
    git clone https://github.com/thenickdude/OSX-KVM.git
  3. 新建安装包
    cd OSX-KVM/scripts/bigsur
    make BigSur-full.img
    # Linux
    # make BigSur-recovery.img
  4. 将 BugSur-xxx.img 上传到 PVE
    • 如果是在 macOS 下生成的离线安装包,镜像大小约为 14-15 G

新建 Big Sur 虚拟机

本步骤与 Proxmox VE KVM 虚拟化 macOS 的区别在硬盘的配置,Proxmox VE KVM 虚拟化 macOS 中新建的硬盘总线为 SATA 0,这里需要改为 VirtIO Block 0,其他配置不变

其他步骤与 Proxmox VE KVM 虚拟化 macOS 相同,最终可以成功安装 Big Sur Continue reading “Proxmox VE 虚拟化 macOS Big Sur”

关于 macOS 虚拟机,我最初的尝试是:无头模式的 Debian 10 虚拟机下开启嵌套虚拟化,然后使用 macOS-Simple-KVM,但是效果并不理想:在 High Sierra 和 Mojave 下,安装程序无法连接到恢复服务器(“The recovery server could not be contacted” 中有人切换到 dhcpd 配置网络后成功连接服务器),而 Catalina 完全无法启动安装程序

之后尝试使用 kholia / OSX-KVM ,但依然无法在无头模式的虚拟机下安装 macOS,之后跟随官方推荐的 nicksherlock.com 中的 PVE 的使用教程,成功创建 macOS 虚拟机

macOS 虚拟机本质上是 OpenCore 引导的黑苹果,新建虚拟机后的安装过程也较为相似,OpenCore 相较于 Clover 省去了很多繁琐的配置步骤,适用于 High Sierra、Mojave、Catalina 和 Big Sur

因为 PVE 也是基于 Debian 和 KVM/QEMU,所以理论上应该适用于所有安装了 KVM/QEMU 的 Linux 系统,区别在于安装过程有没有 GUI

强烈建议机器连接显示器,不要使用无头模式,QEMU 的 -nographic 和 -curses 模式并不好用,并且会产生各种问题导致 macOS 无法安装

下文将展示如何在 Proxmox VE 6.2 下新建 macOS Catalina 虚拟机

准备

  • Proxmox VE 6.2
    • 支持 SSE 4.2 的 CPU
    • Nehalem 及之后架构(带 Core 名称)的 Intel CPU 均支持 SSE 4.2 指令集
  • 正常运行的 Linux/Windows 电脑

参考

步骤

生成安装镜像

  1. 安装 python3、git
  2. 获取 OSX-KVM
    • 执行
      git clone https://github.com/kholia/OSX-KVM.git
  3. 获取 BaseSystem
    • 执行
      cd OSX-KVM
      ./fetch-macOS.py

      Proxmox VE KVM 虚拟化 macOS

    • 选择 13,下载最新版本 Catalina 10.15.7Proxmox VE KVM 虚拟化 macOS
  4. 转换 BaseSystem.dmg 镜像格式
    • macOS 下执行
      hdiutil convert BaseSystem.dmg -format UDTO -o Catalina-Installer.iso
      mv Catalina-Installer.iso.cdr Catalina-Installer.iso
    • Linux 下可以安装 dmg2img
      dmg2img BaseSystem.dmg Catalina-installer.iso

      或者可以使用 qemu-img(需要安装 qemu-utils)

      qemu-img convert BaseSystem.dmg -O raw Catalina-installer.iso
  5. 将 Catalina-installer.iso 镜像上传到 PVE

获取 OpenCore 镜像

Continue reading “Proxmox VE KVM 虚拟化 macOS”