myspaghetti / macos-virtualbox

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.,

een standaard installatie vereist alleen dat de gebruiker geduldig zit en, minder dan tien keer, op enter drukt wanneer daarom wordt gevraagd door het script, zonder interactie met de virtuele machine.

getest opbash enzsh op Cygwin. Werkt op macOS, CentOS 7 en Windows. Zou moeten werken op de meeste moderne Linux distributies.,

documentatie

documentatie kan worden bekeken door het commando ./macos-guest-virtualbox.sh documentation

het merendeel van het script bestaat uit documentatie, opmerkingen of uitvoerbare foutmeldingen, waardoor het script eenvoudig te inspecteren en te begrijpen is.

iCloud-en iMessage-connectiviteit en nvram

iCloud, iMessage en andere aangesloten Apple-services vereisen een geldige apparaatnaam en serienummer, board-ID en serienummer, en andere echte (of echte-achtige) Apple-parameters. Deze kunnen worden ingesteld in NVRAM door het script te bewerken., Zie het documentatiecommando voor meer informatie.

opslaggrootte

het script wijst standaard een opslaggrootte van een virtuele schijf van 80 GB toe, die bij de eerste installatie op de host tot ongeveer 25 GB wordt ingevuld. Nadat de installatie is voltooid, kan de opslaggrootte worden vergroot. Zie het documentatiecommando voor meer informatie.,

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.,

niet-ondersteunde functies

het ontwikkelen en onderhouden van VirtualBox-of macOS-functies valt buiten het bereik van dit script. Sommige functies kunnen zich onverwacht gedragen, zoals ondersteuning voor USB-apparaten, audio-ondersteuning, Ondersteuning Voor het opstartwachtwoord van FileVault en andere functies.

CPU-Compatibiliteit

macOS-gasten op VirtualBox zijn niet compatibel met sommige CPU-modellen. Als het opstartproces van guest macOS blijft hangen op “LoadKernelFromStream”, “EndRandomSeed”, of “EXITBS”, zie dan het documentatiecommando met betrekking tot VirtualBox CPU-profielen en CPUID-instellingen., Sommige CPU-modellen die in 2020 zijn uitgebracht en later vereisen mogelijk het configureren van de gast naar “Mac OS X (64-bit)” in plaats van “macOS 10.13 High Sierra (64-bit)”.

Performance en implementatie

na het succesvol maken van een werkende macOS virtuele machine, kunt u overwegen deze te importeren in meer performante virtualisatiesoftware, of deze te verpakken voor configuratiebeheerplatforms voor geautomatiseerde implementatie. Deze virtualisatie-en implementatietoepassingen vereisen extra configuratie die buiten het bereik van het script valt.,

QEMU met KVM is in staat om virtual machine hardware passthrough te leveren voor bijna-native prestaties. QEMU ondersteunt het VMDK Virtual disk image storage formaat, dat kan worden geconfigureerd om te worden gemaakt door het script. Zie het documentatiecommando voor meer informatie. QEMU en KVM vereisen extra configuratie die buiten het bereik van het script valt.

VirtualBox Native Execution Manager (niet)

De VirtualBox Native Execution Manager (niet) is een experimentele VirtualBox-functie., VirtualBox gebruikt niet wanneer de toegang tot VT-x en AMD-V wordt geblokkeerd door virtualisatiesoftware of uitvoeringsbeschermingsfuncties zoals Hyper-V, Windows Sandbox, WSL2, bescherming van de geheugenintegriteit, apparaatbeveiliging en andere software. macOS en het macOS-installatieprogramma hebben problemen met geheugencorruptie onder niet-virtualisatie. Het script controleert op niet en sluit af met een foutmelding als het wordt gedetecteerd.

Bootloaders

de macOS VirtualBox gast wordt geladen zonder extra bootloaders, maar het is compatibel met OpenCore. OpenCore vereist extra configuratie die buiten de scope van het script valt.,

Audio

macOS ondersteunt mogelijk geen ingebouwde VirtualBox – audiocontrollers. De bootloader OpenCore kan open-source of ingebouwde audio drivers in VirtualBox laden, op voorwaarde dat de configuratie voor stac9221 (Intel HD Audio) of SigmaTel STAC9700,83,84 (ich AC97) beschikbaar is.

display scaling

VirtualBox levert geen EDID voor zijn virtuele display, en macOS maakt geen display scaling (hoge PPI) mogelijk zonder EDID. De bootloader OpenCore kan een EDID injecteren die display scaling mogelijk maakt.,

FileVault

De VirtualBox EFI-implementatie laadt de FileVault-wachtwoordprompt voor volledige schijfversleuteling niet correct bij het opstarten. De bootloader OpenCore kan de wachtwoordprompt laden met de parameter ProvideConsoleGop ingesteld op true. Zie voorbeeld configuratie.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, hoewel versies zo laag als 5.2 kunnen werken.
  • GNU Bash ≥ 4.3, op Windows-run via Cygwin of WSL – zie NEM
  • GNU coreutils ≥ 8.22, GNU gzip ≥ 1.5, Info-ZIP unzip ≥ v6.0, GNU wget ≥ 1.14, xxd ≥ 1.11
  • dmg2img ≥ 1.6.5, op Cygwin het pakket is niet beschikbaar via de package manager, zodat het script downloadt het automatisch.
  • tesseract-ocr ≥ 4

Share

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *