myspaghetti / macos-virtualbox (Deutsch)

Push-button installer of macOS on VirtualBox

macos-guest-virtualbox.sh is a Bash script that creates a macOS virtual machine guest on VirtualBox with unmodified macOS installation files downloaded directly from Apple servers.,

Bei einer Standardinstallation muss der Benutzer nur geduldig sitzen und weniger als zehnmal die Eingabetaste drücken, wenn er vom Skript aufgefordert wird, ohne mit der virtuellen Maschine zu interagieren.

Getestet auf bash und zsh auf Cygwin. Funktioniert unter macOS, CentOS 7 und Windows. Sollte auf den meisten modernen Linux-Distributionen.,

Dokumentation

Die Dokumentation kann durch Ausführen des Befehls ./macos-guest-virtualbox.sh documentation

Der Großteil des Skripts besteht entweder aus Dokumentation, Kommentaren oder umsetzbaren Fehlermeldungen, die die Überprüfung und das Verständnis des Skripts vereinfachen sollten.

iCloud-und iMessage-Konnektivität und NVRAM

iCloud -, iMessage-und andere verbundene Apple-Dienste erfordern einen gültigen Gerätenamen und eine gültige Seriennummer, Board-ID und Seriennummer sowie andere echte (oder echte) Apple-Parameter. Diese können in NVRAM durch Bearbeiten des Skripts eingestellt werden., Weitere Informationen finden Sie im Dokumentationsbefehl.

Speichergröße

Das Skript weist standardmäßig eine virtuelle Zielspeichergröße von 80 GB zu, die bei der Erstinstallation auf dem Host auf etwa 25 GB aufgefüllt wird. Nach Abschluss der Installation kann die Speichergröße erhöht werden. Weitere Informationen finden Sie im Dokumentationsbefehl.,

Primary display resolution

The following primary display resolutions are supported by macOS on VirtualBox: 5120x2880 2880x1800 2560x1600 2560x1440 1920x1200 1600x1200 1680x1050 1440x900 1280x800 1024x768 640x480. See the documentation command for further information.,

Nicht unterstützte Funktionen

Die Entwicklung und Pflege von VirtualBox-oder macOS-Funktionen geht über den Rahmen dieses Skripts hinaus. Einige Funktionen verhalten sich möglicherweise unerwartet, z. B. Unterstützung für USB-Geräte, Audiounterstützung, Unterstützung für die Eingabeaufforderung für FileVault-Startkennwörter und andere Funktionen.

CPU-Kompatibilität

macOS-Gäste auf VirtualBox sind mit einigen CPU-Modellen nicht kompatibel. Wenn der Gast-macOS-Bootprozess an „LoadKernelFromStream“, „EndRandomSeed“ oder „EXITBS“ hängt, lesen Sie den Befehl Dokumentation zu VirtualBox-CPU-Profilen und CPUID-Einstellungen., Bei einigen CPU-Modellen, die 2020 und höher veröffentlicht wurden, muss der Gast möglicherweise auf „Mac OS X (64-Bit)“ anstelle von „macOS 10.13 High Sierra (64-Bit)“konfiguriert werden.

Leistung und Bereitstellung

Nachdem Sie eine funktionierende virtuelle macOS-Maschine erfolgreich erstellt haben, sollten Sie sie in eine leistungsfähigere Virtualisierungssoftware importieren oder für Konfigurationsmanagementplattformen für die automatisierte Bereitstellung verpacken. Diese Virtualisierungs-und Bereitstellungsanwendungen erfordern eine zusätzliche Konfiguration, die über den Umfang des Skripts hinausgeht.,

QEMU mit KVM ist in der Lage, Hardware-Passthrough virtueller Maschinen für nahezu native Leistung bereitzustellen. QEMU unterstützt das virtuelle Disk-Image-Speicherformat VMDK, das so konfiguriert werden kann, dass es vom Skript erstellt wird. Weitere Informationen finden Sie im Dokumentationsbefehl. QEMU und KVM erfordern eine zusätzliche Konfiguration, die über den Umfang des Skripts hinausgeht.

VirtualBox Native Execution Manager (NEM)

Der VirtualBox Native Execution Manager (NEM) ist eine experimentelle VirtualBox-Funktion., VirtualBox verwendet NEM, wenn der Zugriff auf VT-x und AMD-V durch Virtualisierungssoftware oder Ausführungsschutzfunktionen wie Hyper-V, Windows Sandbox, WSL2, Speicherintegritätsschutz, Geräteschutz und andere Software blockiert wird. macOS und das macOS-Installationsprogramm haben Probleme mit der Speicherbeschädigung unter NEM-Virtualisierung. Das Skript sucht nach NEM und beendet es mit einer Fehlermeldung, wenn es erkannt wird.

Bootloader

Der macOS VirtualBox-Gast wird ohne zusätzliche Bootloader geladen, ist jedoch mit OpenCore kompatibel. OpenCore erfordert eine zusätzliche Konfiguration, die über den Umfang des Skripts hinausgeht.,

Audio

macOS unterstützt möglicherweise keine integrierten VirtualBox-Audiocontroller. Der Bootloader OpenCore kann Open-Source-oder integrierte Audiotreiber in VirtualBox laden,wobei die Konfiguration für STAC9221 (Intel HD Audio) oder SigmaTel STAC9700,83, 84 (ICH AC97) verfügbar ist.

Display scaling

VirtualBox liefert keine EDID für die virtuelle Anzeige und macOS aktiviert keine Display Scaling (High PPI) ohne EDID. Der Bootloader OpenCore kann eine EDID einfügen, die die Skalierung der Anzeige ermöglicht.,

FileVault

Die VirtualBox EFI-Implementierung lädt die Eingabeaufforderung FileVault full disk encryption password beim Booten nicht ordnungsgemäß. Der Bootloader OpenCore kann die Kennwortaufforderung mit dem Parameter ProvideConsoleGop auf trueladen. Siehe Beispielkonfiguration.plist.,

Dependencies

The following dependencies should be available through a package manager:
bash coreutils gzip unzip wget xxd dmg2img virtualbox

The following optional packages provide optical character recognition that reduces the required interaction with the script:
tesseract-ocr tesseract-ocr-eng

Supported versions:

  • VirtualBox ≥ 6.1.,6, obwohl Versionen so niedrig wie 5.2 funktionieren können.
  • GNU Bash ≥ 4.3, unter Windows über Cygwin oder WSL laufen – siehe NEM
  • GNU coreutils ≥ 8.22, GNU gzip ≥ 1.5, Info-ZIP unzip ≥ v6.0, GNU ≥ 1.14, xxd ≥ 1.11
  • dmg2img ≥ 1.6.5, bei Cygwin ist das Paket nicht über den Paketmanager verfügbar, sodass das Skript es automatisch herunterlädt.
  • tesseract-ocr ≥ 4

Share

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.