How to Install macOS Monterey Beta on Proxmox 6.4

Hello everyone, welcome to another Hackintosh tutorial. In this article, I am going to show you how to install macOS Monterey Beta on Proxmox VE. The new macOS 12 Monterey Beta is currently available. We can download the installer via Apple Developer Account. But if you don’t have it, don’t worry, we can solve it. Before we continue, there is some information for you. First, in order to download the macOS Monterey installer, you will need a real Mac or a working Hackintosh. If you don’t have a Mac or Hackintosh, there is a way to download the macOS Monterey Beta ISO directly. But personally, I haven’t tried this ISO. But I will give the download link for you to try. This will be a pretty long article, but if you like to try macOS Monterey on your Proxmox VE, I think it’s worth it.

Before we go through, you may want to check my related articles below

Prerequisites

  • Proxmox VE server
  • A Mac or Hackintosh

Steps to Install macOS Monterey Beta on Proxmox 6.4

Step 1. Download macOS Monterey

First we need to download macOS Monterey Beta installer on your Mac or Hackintosh. Please read my guide below to download macOS Monterey Beta without developer account. After the download finish, do not install it. If the installer open automatically, simply close it. We don’t want to install the Monterey here.

At the end of this process, you will have a file called Install macOS 12 Beta in your Applications folder.

Step 2. Make the ISO or IMG

In this step, we will create the IMG file from the macOS Monterey installer. Download the repository from the link below. Thanks to Nicholas Sherlock for this great script and all the guides he made on his website. This article won’t exist without his great guide. Proxmox can read IMG just like ISO format. So don’t get confused.

https://github.com/thenickdude/OSX-KVM

From your Mac or Hackintosh, open the Terminal and execute this command

xcode-select --install

This will download and install the xcode from the internet.

Now cd to the OSX-KVM-master/scripts/monterey

cd ~/Downloads/OSX-KVM-master/scripts/monterey

And then use this command to create the .img installer.

make Monterey-full.img

This process will take a while. You will also need to enter your password when asked to. At the end of the process, you should see something like this.

And also you should see the Monterey-full.img is now in that monterey folder.

Step 3. Upload the IMG to Proxmox Storage

Now let’s upload this Monterey-full.img to the Proxmox ISO storage.

Step 4. Prepare the OpenCore boot loader ISO

Now we are going to prepare the OpenCore boot loader ISO. You can download the latest OpenCore ISO for macOS Monterey using the link below. This version has been modified so it will work with macOS Monterey on Proxmox VE. It also works with macOS Catalina and Big Sur.

https://github.com/thenickdude/KVM-Opencore/releases

Step 4. Get the OSK Authentication Key

The OSK Authentication Key is needed to verify that macOS is running on the Real Mac hardware. There is a step to get this code. But because all hardware will return the same OSK key, I think it is simpler for you to get this OSK key from the forum below.

https://forum.proxmox.com/threads/mini-howto-running-mac-os-x-10-9-under-proxmox-3-3.19722/page-4

The key will start with the following word: ourhardworkbythesewordsguardedpleasedontsteal…… I won’t type the complete key here because I am not sure if it is legal or illegal.

Step 5. Create the Virtual Machine

Now let’s create a new virtual machine in Proxmox.

First, give the new VM a name and please take a not of the VM ID. We will need this later.

Next select the OpenCore-v13.ISO and guest OS set to Other.

Set graphic card to VMware compatible and tick the Qemu Agent. Set Machine to q35 and BIOS set to OVMF (UEFI). Don’t forget to set the storage for the EFI disk.

Now create a new hard disk with 100 GB, set to raw format and write back (unsafe) option as shown below.

Set the CPU core 4 (minimum) or you can set it higher number if your host processor has more cores. Set the CPU type to Penryn.

Set the RAM for the VM. In this case I set mine to 8 GB. Disable ballooning device option.

Finally, the VM summary.

Add second IDE drive

Go to the Hardware page of the VM. Add a new CD/DVD at IDE 0 and then select the Monterey-Full.img

Step 6. Configure the Config file

Do not start the VM just yet. We need to modify the VM config file. Now connect to the Proxmox server via SSH and edit the VM config file. In this case, my VM ID is 105.

ssh root@192.168.100.200

And then execute this command to edit the 105.conf file using nano.

sudo nano /etc/pve/qemu-server/105.conf

Now add this line to the config file

args: -device isa-applesmc,osk="YOUR-OSK" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2

If you are running Intel processor on your Proxmox server, add this line to the end of the “args” line

-cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc

If you are on AMD processor, use this line instead

-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

Next, find the two ISO’s, IDE0 and IDE2, replace the “media=cdrom” with “cache=unsafe“. This is the final example of my config file.

args: -device isa-applesmc,osk="your-osk-code-here" -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
agent: 1
balloon: 0
bios: ovmf
boot: order=virtio0;ide2;net0
cores: 4
cpu: Penryn
efidisk0: disk2:105/vm-105-disk-1.qcow2,size=128K
ide0: disk2:iso/Monterey-full.img,cache=unsafe,size=14G
ide2: disk2:iso/OpenCore-v13.iso,cache=unsafe
machine: q35
memory: 8192
name: Monterey
net0: vmxnet3=2E:5F:B8:11:0D:80,bridge=vmbr0,firewall=1
numa: 0
ostype: other
scsihw: virtio-scsi-pci
smbios1: uuid=7d2565af-cc25-45d4-afa5-8aa560359563
sockets: 1
vga: vmware
virtio0: disk2:105/vm-105-disk-0.raw,cache=unsafe,discard=on,size=100G
vmgenid: fd69999e-3c1f-40ea-a3f7-33bed17ef382

Step 7. Configure Proxmox

To avoid boot loop during macOS boot process, execute this command on Proxmox server.

echo 1 > /sys/module/kvm/parameters/ignore_msrs

Make it persistent with this command

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

Step 8. Install macOS Monterey

Now boot the VM and on the first boot screen picker, choose Install macOS 12 Beta as shown below.

Wait until it reaches the following screen.

Choose Disk Utility and click Continue. And then select the hard disk that say Apple Inc. VirtIO Block Media. If you cannot see this, click View and choose Show All Devices.

Give a name for the hard disk, Format set to APFS and Scheme set to GUID Partition Map.

Click Erase to start formatting the disk.

When finish, close the Disk Utility and it will back to the main screen. Choose install macOS 12 Beta and then click Continue.

And then click Continue

Accept the license agreement

Select the destination disk

Now the installation will start

Be patient because the installation could take a long time. During the installation, it will restart several times and make sure you select macOS installer on the next boot picker menu.

Finally, macOS 12 Monterey on Proxmox. But before that, there are some final steps we need to take. Configure macOS. It will take few minutes. We need to set the language, Apple ID, and so on. I will skip these steps.

And viola

To avoid the boot loop during macOS boot, we need to turn on the FileVault,

Step 9. Make the installation permanent

When we reboot macOS Monterey, we still need the OpenCore.iso disk to boot. We need to copy the EFI folder to the EFI partition in the new macOS system. From the macOS Monterey, download Clover Configurator. We will use this to mount the EFI partitions. Get it from here

Now run the program and then click Mount EFI from the left panel. See my illustration below. We are going to copy the EFI folder from the source to the destination.

To do that, click Mount Partition from the source and Destination. And then click Open Partition for both. Finally copy the EFI folder accross.

Now you can remove the OpenCore.iso from the hardware list on the Proxmox VM hardware page.

Be the first to comment

Leave a Reply