geerlingguy / macos-virtualbox-vm

Instructions and script to help you create a VirtualBox VM running macOS.
MIT License
2.55k stars 314 forks source link

Install without an internet connection using only the iso content? #55

Closed johnlane closed 6 years ago

johnlane commented 6 years ago

This is more of an question about the process rather than an issue with script that prepares the iso.

I tried to install High Sierra, having successfully created the iso using the script. Everything goes fine except that it appears to download everything from Apple instead of using the iso (already the product of a 6GB download). Do I have that wrong? The install time was estimated at 3+hours.

I killed everything and tried again with the network cable (virtually) unplugged. This time the installer would not start, but popped up an error stating that The Recovery Server Could Not Be Contacted.

I killed everything once more and tried again with Sierra, which works as expected and takes around 15 minutes to complete.

So, is it possible to install High Sierra without an internet connection using only the content in the iso?


I started with Mojave, after updating the script to produce an iso, but that has problems because VirtualBox lacks certain support - it hangs during the initial text part of the boot process at apfs_module_start and my initial reading indicates that virtualbox lacks afps support. So I tried to install High Sierra (unsuccessfully because I didn't want to download everything again), and then I successfully installed Sierra.

(All images were downloaded from Apple using my macBook Air which is currently running Sierra.)

geerlingguy commented 6 years ago

It seems that Apple does some sort of 'integrity check' in High Sierra which always requires re-downloading the bulk of the installer. Not sure why, but it is what it is.

I haven't tested Mojave at all, but yeah, VirtualBox and APFS don't really work together.

johnlane commented 6 years ago

Just thought I'd close this out by saying that my High Sierra ISO was 10.13.1 so I downloaded the final High Sierra 10.13.6 to see if that would install without further downloads but it still insisted on 2.5 hours of further downloads.

But the install does work, as long as you don't mark the device as being an SSD (VBoxManage storageattach $vm --nonrotational off ...) in addition to not selecting APFS. I only did the latter on my first attempt but the disk gets convereted to APFS anyway unless VirtualBox presents it as nonrotational.

For background interest, my virtual disk is a raw vmdk overlaying a raw ZFS zvol in a ssd zpool.

I did patch the script for Mojave and I was going to offer a PR but, given I cannot boot it, I can't fully test it so I am going to stick with High Sierra and wait to see if Virtualbox adds the required APFS support. I was going to try Clover but I've never used it so it would be a digression into a black hole for time...

EricFromCanada commented 1 year ago

This issue has come up again because it appears that Apple has turned off the Internet Recovery servers for macOS 10.13 and earlier. This affects any installer disk images for 10.13 not created with createinstallmedia. I encountered this when installing from disk images generated by my own disk image creation script for VMware Fusion/ESXi, and solved it by switching to createinstallmedia for 10.13 and later. So far 10.14 and 10.15 disk images still work (and still re-download their assets during installation)… for now.

Update 2024-03: An investigation by Mr. Macintosh reveals that a change to Apple's recovery servers has rendered them inaccessible over HTTPS to macOS 10.13. But as they're still accessible over plain HTTP, setting a new IASUCatalogURL value in NVRAM is all that's required to get Internet Recovery for High Sierra working again. (A separate post details how to fix Internet Recovery for Sierra, which is also broken but in a different way.)