Vorab: Ja, es geht. Aber ohne durchgereichte Grafikkarte bereitet macOS unter Proxmox keine Freude, da keine Videobeschleunigung verfĂŒgbar ist.
Auch die gesammte Installation zieht sich wie Kaugummi. Ist alles sehr trÀge und dauert. Meine Herausforderung war nur es zum laufen zu bringen.
mein Setup:
- Dell PowerEdge T420
- Proxmox 7.1
- macOS Monterey Recovery Image
- KVM OpenCore Bootloader
Um hier nicht nochmal alles im Detail beschreiben zu mĂŒssen, verweise ich mal auf die sehr ausfĂŒhrlichen Artikel von Nicholas Sherlock.
Den benötigten Apple OSK Key findet man ĂŒber den zweiten link. ;)
- https://www.nicksherlock.com/2021/10/installing-macos-12-monterey-on-proxmox-7
- https://i12bretro.github.io/tutorials/0551.html
Vorbereitungen
Ohne ein laufendes macOS kann man sich nur ein Recovery Image erstellen, was aber vollkommen ausreichend ist.
Das eigentliche Installationsprogramm wird wÀhrend der Installation aus dem Internet nachgeladen. (ca. 12GB)
Auf dem Proxmox Host das script fetch-macOS-v2.py herunterladen und im Terminal ausfĂŒhren.
$ wget https://raw.githubusercontent.com/kholia/OSX-KVM/master/fetch-macOS-v2.py $ chmod +x fetch-macOS-v2.py $ ./fetch-macOS-v2.py 1. High Sierra (10.13) 2. Mojave (10.14) 3. Catalina (10.15) 4. Big Sur (11.6) - RECOMMENDED 5. Monterey (latest) Choose a product to download (1-5): 5 Monterey (latest) Downloading 002-23770... --- SNIP ---
Das DMG Image konvertieren.
$ qemu-img convert BaseSystem.dmg -O raw Monterey-Recovery.iso
Ein aktuelles KVM-Opencore ISO herunterladen.
$ wget https://github.com/thenickdude/KVM-Opencore/releases/download/v15/OpenCore-v15.iso.gz $ gunzip OpenCore-v15.iso.gz
Beide Dateien in den ISO Store kopieren.
$ cp OpenCore-v15.iso /var/lib/vz/template/iso/ $ cp Monterey-Recovery.iso /var/lib/vz/template/iso/
macOS Montery VM erstellen
ZusĂ€tzliches CD Laufwerk hinzufĂŒgen. (IDE 0, Monterey-Recovery.iso)
In der /etc/pve/qemu-server/200.conf, die beiden EintrÀge mit media=cdrom durch cache=unsafe ersetzen.
ide0: local:iso/Monterey-Recovery.iso,cache=unsafe,size=3133040K ide2: local:iso/OpenCore-v15.iso,cache=unsafe
FĂŒr eine Intel CPU noch folgenden Eintrag am Ende einfĂŒgen und den Apple OSK Key Ă€ndern.
args: -device isa-applesmc,osk="THE-OSK-YOU-EXTRACTED-GOES-HERE" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -global nec-usb-xhci.msi=off -global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc
Die Boot Order auf IDE2 (OpenCore.iso) stellen und andere EintrÀge deaktivieren.
macOS Montery installieren
VM starten, der OpenCore Bootloader sollte jetzt das Recovery Image laden können. (macOS Base System)
Disk Utility auswÀhlen, Festplatte löschen, neu erstellen und formatieren.
ZurĂŒck und Reinstall macOS Monterey auswĂ€hlen.
Harddisk auswÀhlen und los. (Im Terminal des Hosts lasse ich parallel iftop laufen, da sieht man gut wieviel Gigabyte schon heruntergeladen wurden.)
Nach dem Reinstall wird die VM mehrmals neu starten. Immer macOS Installer auswÀhlen bis der Eintrag verschwunden ist und die eigene Harddisk dort erscheint.
Hat man sich dann noch durch den elendig langsamen Setup-Assistenten gequÀlt, ist macOS endlich installiert.
OpenCore auf die Harddisk installieren
Gestartet wird immer von der eingebundenen OpenCore.iso. Der Bootloader wird jetzt auf die Harddisk installiert um von dieser dann starten zu können.
Mit dd wird die EFI Partition der macOS Harddisk mit der EFI Partition der OpenCore ISO ĂŒberschrieben.
Bei mir ist die disk1s1 die EFI Partition der macOS Harddisk und die disk2s1 die EFI Partition der ISO. (Aufpassen das man hier die richtigen Disks auswÀhlt!)
Die VM jetzt herunterfahren und die beiden Installer ISOs (Harddisks) entfernen. Die Boot Order noch auf virtio0 Àndern und wieder starten.
Passt alles, erscheint das OpenCore Boot-MenĂŒ und die macOS Harddisk kann zum starten von Monterey ausgewĂ€hlt werden.
OpenCore Einstellungen Àndern
Die EFI Partition mounten um die config.plist zu bearbeiten. Ich habe z.B. bei mir die Auflösung auf 1440 x 900 geÀndert. (default sind 1920 x 1080)
# EFI Partiton ermitteln root$ diskutil list /dev/disk0 (internal): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme 68.7 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_APFS Container disk1 68.5 GB disk0s2 # Verzeichnis fĂŒr den Mountpoint erstellen root$ mkdir /Volumes/EFI # EFI Partition mounten root$ mount -t msdos /dev/disk0s1 /Volumes/EFI # config.plist editieren root$ vi /Volumes/EFI/EFI/OC/config.plist --- SNIP --- <key>Resolution</key> <string>1440x900@32</string> --- SNIP --- # EFI Partition unmounten root$ diskutil umount /Volumes/EFI
configuration.pdf – Beschreibung der OpenCore config.plist Konfiguration
Vielen Dank fĂŒr dieses tolle Tutorial. Auf Wunsch ist eine GPU-Beschleunigung möglich. Ich habe es nie geschafft, aber viele Leute haben es geschafft.
Ich habe dir den Link gesetzt: https://www.youtube.com/watch?v=MdQqms6aySU&t=777s
Es gibt viele usr-Internet-Tutorials zu GPU (PASSTHROUGH) proxmox, aber ehrlich gesagt habe ich es nie geschafft, meine Intel HDA 4600-Hardware oder meine Grafikkarten: ATI HD5770 und AMD R9 270X zum Laufen zu bringen.
Wenn Sie sich eines Tages entscheiden, ein GPU (PASSTHROUGH) proxmox-Tutorial zu machen, werde ich wie immer da sein, um Ihnen zu danken ^^.
Danke aus Frankreich (Marseille)
Danke.
Habe noch eine GT710 hier rumliegen. Werde es damit mal versuchen… ;)
Ein gutes Tutorial findet sich hier…
https://blog.quindorian.org/2018/03/building-a-2u-amd-ryzen-server-proxmox-gpu-passthrough.html/
Damit habe ich meine Radeon Pro W6600 an die VM durchgereicht und es lÀuft sogar mit 4 Monitoren problemlos.
VG
Michael
Super, danke!
Hallo,
vielen Dank fĂŒr die tolle Anleitung.
Ich komme leider nur bis zu diesem Punkt
“VM starten, der OpenCore Bootloader sollte jetzt das Recovery Image laden können. (macOS Base System)”
An der Stelle lÀdt der Bootloader das Image nicht mir wird an der Stelle immer nur die Shell angezeigt.
Woran kann das liegen?
Danke fĂŒr die Hilfe!
GrĂŒĂe
Chris
Dann hast du beim erstellen der EFI Disk das HĂ€kchen bei Pre-Enrolled keys nicht entfernt.
Die Disk einfach löschen und neu erstellen.
Guten Abend,
wo kann ich den genau die EintrÀge Àndern? Stehe gerade etwas am Schlauch.
In der /etc/pve/qemu-server/200.conf, die beiden EintrÀge mit media=cdrom durch cache=unsafe ersetzen.
In der /etc/pve/qemu-server/VMID.conf deiner VM.
Danke fĂŒr deine schnelle Antwort, ich glaube ich bin zu dumm.
Ich finds einfach nicht, kannst du mir bitte ne Hilfestellung geben wo ich das finde?
In der /etc/pve/qemu-server/VMID.conf deiner VM. Die zwei ide EintrÀge.
ide0: local:iso/Monterey-Recovery.iso,media=cdrom,size=3133040K
ide0: local:iso/Monterey-Recovery.iso,cache=unsafe,size=3133040K