VM 201 – macOS Sequoia (Hackintosh)

Stand: April 2026

Note

macOS Sequoia als KVM-VM auf Proxmox. Läuft über OpenCore-Bootloader mit SMBIOS-Spoofing – kein nativer Apple-Support, aber vollständig funktionsfähig inkl. iCloud.

Basisdaten

Parameter Wert
VM-ID 201
Name macos-sequoia
OS macOS Sequoia 15.6.1 (24G90)
CPU host passthrough, 4 Cores
RAM 8.192 MB
Firmware OVMF (UEFI), kein Secure Boot
Machine q35
Display VMware SVGA
Netzwerk vmxnet3, DHCP

Disk-Übersicht

Slot LVM-Volume Inhalt Größe
efidisk0 vm-201-disk-0 OVMF UEFI NVRAM 4 MB
sata0 vm-201-disk-1 macOS BaseSystem (Recovery-Image) 1,3 GB
sata2 vm-201-disk-3 Macintosh HD (macOS-Installation) 100 GB
sata3 vm-201-disk-2 OpenCore v21 Bootloader (GPT-Disk) 152 MB

Boot-Reihenfolge: sata3 (OpenCore) → sata0 (BaseSystem) → sata2 (Macintosh HD)

Bootloader – OpenCore

  • Projekt: KVM-Opencore v21 (REL-100, März 2024)
  • SMBIOS: iMacPro1,1
  • SecureBootModel: j137 (T1-Chip-Simulation – für iCloud zwingend erforderlich)
  • ScanPolicy: 0x0 (alle Disk-Typen)

[!WARNING] Das OpenCore-„ISO" ist kein echtes ISO 9660, sondern ein raw GPT-Disk-Image. Es muss als SATA-Disk (nicht als CD-ROM) eingebunden werden – sonst findet OVMF keinen Bootloader.

SMBIOS-Seriennummern (iCloud-fähig)

Feld Wert
SystemSerialNumber C02YJRZXHX87
MLB C02914310QXJG361M
SystemUUID 6B7D3ACC-FA73-4437-94ED-3CEF31EF773C
ROM BC2411E13CD2 (= VM-MAC ohne Doppelpunkte)

OpenCore config.plist bearbeiten

Important

Nur bei gestoppter VM durchführen.

qm stop 201
mkdir -p /mnt/oc_efi
losetup -f --show -o $((40*512)) /dev/pve/vm-201-disk-2   # gibt /dev/loopX aus
mount /dev/loopX /mnt/oc_efi
nano /mnt/oc_efi/EFI/OC/config.plist
umount /mnt/oc_efi && losetup -d /dev/loopX
qm start 201

iCloud & Apple-Dienste

Dienst Status
iCloud Drive, Fotos, Keychain ✅ funktioniert
App Store ✅ funktioniert
iMessage / FaceTime ⚠️ manchmal blockiert – 24h warten, dann nochmal
Handoff, AirDrop, Sidecar ❌ kein Bluetooth/WLAN in VM
GPU-Beschleunigung ❌ kein Passthrough
Sleep / Standby ❌ in macOS deaktivieren

Troubleshooting „Prüfung fehlgeschlagen":

  1. SecureBootModel muss j137 sein (nicht Disabled)
  2. iPhone/iPad: Einstellungen → Apple-ID → Passwort & Sicherheit → Bestätigungsdialog?
  3. Nochmal versuchen oder kurz über anderen IP-Bereich (Hotspot)

Neue SMBIOS-Seriennummern generieren

# macserial herunterladen (einmalig)
curl -L https://github.com/acidanthera/OpenCorePkg/releases/download/1.0.7/OpenCore-1.0.7-RELEASE.zip -o /tmp/oc.zip
unzip /tmp/oc.zip 'Utilities/macserial/macserial.linux' -d /tmp/oc/
chmod +x /tmp/oc/Utilities/macserial/macserial.linux

# 3 Seriennummern generieren, einen Satz auswählen
/tmp/oc/Utilities/macserial/macserial.linux -m iMacPro1,1 -n 3

# EFI mounten und patchen
qm stop 201
losetup -f --show -o $((40*512)) /dev/pve/vm-201-disk-2
mount /dev/loopX /mnt/oc_efi

python3 << 'PYEOF'
import plistlib, uuid
with open('/mnt/oc_efi/EFI/OC/config.plist', 'rb') as f:
    p = plistlib.load(f)
pi = p['PlatformInfo']['Generic']
pi['SystemSerialNumber'] = 'NEUE_SERIAL'   # ← anpassen
pi['MLB']                = 'NEUE_MLB'       # ← anpassen
pi['SystemUUID']         = str(uuid.uuid4()).upper()
pi['ROM']                = bytes.fromhex('BC2411E13CD2')
with open('/mnt/oc_efi/EFI/OC/config.plist', 'wb') as f:
    plistlib.dump(p, f)
print('Fertig:', pi['SystemSerialNumber'])
PYEOF

umount /mnt/oc_efi && losetup -d /dev/loopX
qm start 201

VM vollständig entfernen (Rollback)

Warning

Diese Schritte löschen die VM und alle zugehörigen Daten unwiderruflich. Kein Backup nötig, aber sicher sein.

Schritt 1 – VM stoppen und vollständig löschen

qm stop 201
qm destroy 201 --purge

--purge entfernt automatisch alle LVM-Volumes:

  • vm-201-disk-0 (EFI NVRAM, 4 MB)
  • vm-201-disk-1 (BaseSystem, 1,3 GB)
  • vm-201-disk-2 (OpenCore, 152 MB)
  • vm-201-disk-3 (Macintosh HD, 100 GB)
  • /etc/pve/qemu-server/201.conf

Schritt 2 – Heruntergeladene Dateien entfernen

# OpenCore ISO aus local-Storage
rm -f /var/lib/vz/template/iso/OpenCore-v21.iso

# BaseSystem-Dateien auf HDD (hdd5tb)
rm -f /mnt/storage/pve-data/iso/BaseSystem.dmg
rm -f /mnt/storage/pve-data/iso/BaseSystem.img
rm -f /mnt/storage/pve-data/iso/BaseSystem.chunklist

# OSX-KVM Projektverzeichnis
rm -rf /opt/OSX-KVM

# macserial / OpenCorePkg (falls vorhanden)
rm -rf /tmp/oc/ /tmp/oc.zip /tmp/oc107* /tmp/oc107.zip

Schritt 3 – Optionale Aufräumarbeiten

# Mount-Verzeichnisse entfernen
rmdir /mnt/oc_efi /mnt/macos_installer 2>/dev/null || true

# Tools deinstallieren (nur wenn nicht anderweitig genutzt)
apt remove -y dmg2img p7zip-full

Verifikation – alles weg?

qm list                                         # VM 201 darf nicht erscheinen
lvs | grep vm-201                               # darf keine Ausgabe liefern
ls /var/lib/vz/template/iso/ | grep -i opencore
ls /mnt/storage/pve-data/iso/ | grep -iE 'base|opencore'
ls /opt/OSX-KVM 2>/dev/null && echo 'NOCH DA'  # nichts ausgeben = OK

Prüfung / Status

qm status 201
qm config 201

Verwandte Seiten