Guten
Abend alle.
Ich wollte mal eine kleine Anleitung Teilen, mit der ihr OSX auf
einem Proxmox server voll Funktionsfähig instalieren könnt.
Warum sollte man OSX Virtuellen umgebung installieren?
Erst einmal möchte ich auf die vorteile eingehen. Warum sollte
man es über einen KVM/qemu server in einer Virtuellen umgebung
installieren?
-Proxmox bittet eine bequeme möglichkeit, Backups der aktuellen
version zu machen.
-Sollte man also was beim bastelln verhauen, kann man das Backup
neu aufspielen und alles ist wieder so, wie es davor war.
-Man kann verschiedene CPU typen emulieren, was also auch bei
inkompatibelen CPUs einen Kompatiblen Emulieren lassen kann.
Wer tiefer in die möglichkeiten von KVM/qemu einsteigen will,
kann ja die offiziele Dokumentation anschauen.
https://libvirt.org/
und https://www.qemu.org/docs/master/
Was braucht ihr für die umsetzung?
-Proxmox:
https://www.proxmox.com/de/downloads
Da einfach die aktuelle VE ISO Downloaden.
-Einen 2 Pc/tablet/Android phone
um auf das Web pandel nach der Installation zuzugreifen.
-Linux:
Ich mache das Tuturial über Kubuntu bzw. Ubuntu.
https://ubuntu.com/download/desktop
Einfach die Aktuelle LTS version, und ihr macht nichts Falsch.
-2 Grafikkarten
es geht auch eine in der CPU Intigierten Grafikeinheit.
Aber ihr braucht auch eine AMD, um OSX vernünftig zu nutzen.
Mainboard und CPU vorraussetzungen:
Ihr müsst schauen, das eure CPUS
Virtualisierungs-Hardware-Erweiterung unterstützen
Intel:
Intel VT Virtualisierungs-Hardware-Erweiterung
AMD:
AMD-V Virtualisierungs-Hardware-Erweiterung
Schaut das bitte in den handbüchern nach.
Unter Linux kann euch der Command:
cat/proc/cpuinfo
Infos zu CPU ausgeben. Sucht unter „Flags“ nach vmx.
Wenn ihr weder vmx oder svm findet, sondern eine 0, dann müsst
ihr in eurem Bios nachsehen, ob sich AMD-V oder Intel-VT aktivieren
lässt
Der command:
egrep -c '(svm|vmx)'/proc/cpuinfo
sollte einen Wert ausgeben der höher als 0
ist.
dann unterstützt der Prozessor
Virtualisierungsfunktionen und diese sind auch aktiv. Die zahl
defeniert die Kerne, die die Virtualisierungsfunktionen unterstützen.
Jetzt müsst ihr in eurem mainboard nur noch
iommu aktivieren.
Wenn das alles soweit passt, könnt ihr
Proxmox auf dem System installieren.
Wenn ihr Proxmox installiert habt, und auf
der Oberfläche seit,
Brauchen wir ein Linux system. Ich geh mal
davon aus, das ihr eins erstellt habt (2pc)
<strong>OSX-KVM für das recovery Image</strong>
wir brauchen jetzt aus dieser anleitung:
<a href="https://github.com/kholia/OSX-KVM">https://github.com/kholia/OSX-KVM</a>
nur ein paar sachen.
Ubuntu Terminal öffnen:
1.
qemu lassen wir weg, gibt sonnst eine Fehlermeldung
Wir geben ein:
sudo apt-get install uml-utilities
virt-manager git \
wget
libguestfs-tools p7zip-full make dmg2img tesseract-ocr \
tesseract-ocr-eng
genisoimage -y
2.
cd ~
git clone --depth 1 --recursive
https://github.com/kholia/OSX-KVM.git
cd OSX-KVM
3.
[tt]./fetch-macOS-v2.py[/tt]
Dann erscheint:
$ ./fetch-macOS-v2.py
1. High Sierra (10.13)
2. Mojave (10.14)
3. Catalina (10.15)
4. Big Sur (11.7)
5. Monterey (12.6)
6. Ventura (13) - RECOMMENDED
7. Sonoma (14)
Choose a product to download (1-6): 6
Typt ein, welches OSX ihr haben wollt.
Ich habe Ventura genommen.
Also hab ich 6 Getippt.
Wenn der Download fertig ist, das terminal
nicht schliesen.
Nun geben wir ins terminal ein:
dmg2img -i BaseSystem.dmg BaseSystem.iso
NICHT: dmg2img -i BaseSystem.dmg BaseSystem.img
wichtig: iso
So, denn rest der anleitung brauchen wir nicht mehr.
Jetzt downloaden wir die Opencore.iso
https://github.com/thenickdude/KVM-Opencore/releases
Jetzt entpacken wir das Archiv
Jetzt gehen wir auf
den Proxmox server unter > ISO local > und laden unter ISO-images
basesystem.iso und
opencore.iso hoch.
Jetzt erstellen wir
die VM:
unter allgemein >
merkt euch die VM-ID und sucht euch einen namen aus.

Unter OS >
ISO > die
opencore.
Typ > Other

Unter System >
Grafikkarte >
Vmware kompatible
maschinentyp >
q35
SCSI Controller >
VirtlO SCSI single
BIOS > OVMF UEFI
Pre-Entroll >
hacken raus

unter Disks >
Bus > VirtlO
Block
Storage > da wo
ihr wollt
Disk-Größe >
250
Cache > wirte
back unsicher

Unter CPU >
Sockets> 1
Kerne >
Mindestens 4
rest so lassen.

Unter Speicher >
Mindestens 4GB

Unter Netzwerk>
Modell > Vmware
vmxnet3

unter bestätigen>
Schaut unbedingt das bei: nach Erstellen
starten KEINEN hacken hat und drückt Abschliesen

Geht jetzt bei der
VM auf Hadware>
Hinzufügen >CD/DVD
laufwerk und sucht die basesystem.iso > hinzufügen.

Optionen >
Boot-Reihenfolge Opencore.iso nach oben.

jetzt geht unter
NAME-server
in die Shell und gibt ein:
nano/etc/pve/qemu-server/EURE NUMMER.conf
(die nummer vor dem
namen der VM)
mit Intel CPU das
hier einfügen:
- args: -device
- isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
- -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,vendor=GenuineIntel,+invtsc,+hypervisor,kvm=on,vmware-cpuid-freq=on
mit AMD CPU das
eingeben:
- args: -device
- isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
- -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
- Haswell-noTSX,vendor=GenuineIntel,+invtsc,+hypervisor,kvm=on,vmware-cpuid-freq=on

zeile 6 und 7
ide0:
ide2:
bei Basesystem.iso
und Opencore-v20.iso das media=cdrom löschen

Strg X beenden >
Y, ENTER
jetzt in der Shell
noch mal die iommu gruppe überprüfen
- for d in
- /sys/kernel/iommu_groups/*/devices/*; do
- n=${d#*/iommu_groups/*}; n=${n%%/*}
- printf 'IOMMU
- Group %s ' "$n"
- lspci -nns
- "${d##*/}"
- done
Es sollte ähnlich
wie bei mir aussehen. (Zahlen können variieren)
Wichtig ist, das
euro Grafikkarten unterschiedliche IOMMU Group haben
bei mir:
die Radeon RX 560
IOMMU Group 8
RTX 2060 Super IOMMU
Group 16.

Wenn beide karten
bei euch in der gleichen Gruppe sind, müssen wir das Trennen
erzwingen.
Dafür geben wir im
Terminal ein:
- sudo nano
- /etc/default/grub (oder ohne sudo)
dann tauscht zeile 4
mit diesem hier aus:
- GRUB_CMDLINE_LINUX_DEFAULT="quiet
- intel_iommu=on amd_iommu=on"

zum schließen Strg X
Speichern bestätigen Y
Bestätigen Enter
update-grub
reboot
Noch mal die Gruppen
überprüfen, wenn es noch immer nicht geht, wieder nano/etc/default/grup
und Tauscht die
geänderte zeile mit diese aus:
- GRUB_CMDLINE_LINUX_DEFAULT="quiet
- intel_iommu=on amd_iommu=on
- pcie_acs_override=downstream,multifunction"
Strg X Y Enter
update-grub
reboot
Die Gruppen sollten
jetzt getrennt sein.
Jetzt ist es so
weit. Geht auf die VM Konsole Und drück Start Der rest läuft wie
bei jedem hackintosh.
Die Grafikkarte aber bitte erst nach der ersten Erfolgreichen Installation durchreichen:




Die AMD Grafikkarte
wird wie folgt durchgereicht:
Hardware >
Hinzufügen>
PCI gerät >Raw
Device > Gerät (die Karte)
Alle funktionen>
hacken rein
Primäre GPU >
Hacken rein
Das gleiche könnt
ihr auch mit USB tastatur und maus einstellen.
Nun Starten, und
euer Bildschirm wird euch mit dem OSX screen begrüßen
Folgender Bugs sind mir bis jetzt mit Lösung bekannt:
-Man wird nur mit dem OSX hintergrundbild begrüßt ohne Anmeldetext
Lösung: Blind Enter Drücken Passwort eingeben, und Warten
-Host Bildschirm Bileibt schwarz
Lösung:
im NoVNC unter Konsole im Opencore menü einmal nach rechts, und Enter. Dann sollte der Host Bildschirm wieder "Lebendig" werden.
Bugs die noch keine Lösung haben:
- Wenn man die VM beim Starten des Servers aktiviert, bleibt der Bildschirm Schwarz, da das Opencore-menü nicht übertragen wird und nicht die OSX bootdisk ausgewählt wird und auch nicht "Blind" mit durchgereichter Tastatur gewechselt werden kann.
Da ich das Projekt teilweiße selbst lauffähig erstellt habe, da es in diversen anleitungen unterschiedliche Probleme gab, sehe ich das als Beta, und bin dankbar für Bug und Lösungsmeldungen.
Hier meine Quellen:
https://github.com/kholia/OSX-KVM
https://i12bretro.github.io/tutorials/0775.html
https://github.com/Lekensteyn/dmg2img
https://www.computerweekly.com…sor-in-Ihrem-Linux-System
https://www.thomas-krenn.com/d…ion_Intel_VT-x_aktivieren
https://www.kernel.org/doc/Doc…sysfs-kernel-iommu_groups
https://wiki.gentoo.org/wiki/G…ugh_with_libvirt_qemu_kvm
Edit 1:
1.
Ich werde die nächsten Tage, einmal schauen ob ein Update auf das neuste OSX von älteren versionen soweit problemlos Funktoniert.
EDIT 3:
Das Upgrade geht bis jetzt bis, Ventura. Das Upgrade auf Sonoma verursacht bis jetzt beim Bootvorgang, leider einen Blackscreen.