Jump to content

[Guide] Install macOS Sierra on VMWare Fusion 8


10 posts in this topic

Recommended Posts

It’s that time of year again! With #WWDC2016 in full swing, Apple has graced us with an insider look at the next big OS release for the newly renamed macOS, dubbed Sierra.

By default, it doesn’t work in Fusion as a virtual machine the same way users would expect by simply dragging the installer .app onto Fusion. Make sure to update to the latest version of Fusion, otherwise it might not work.

Luckily, we can use some tools built into OS X El Capitan (and earlier) to get this working in a VM.

At a high level, we need a blank OS X 10.11 (custom) VM, and we need to leverage command line tools (with links to their respective docs):

  • Apple’s ‘createinstallmedia‘ CLI tool which is bundled with the “Install 10.12 Developer Preview.app”
  • VMware’s ‘vmware-rawdiskCreator‘ tool to create the actual disk where we will be installing to.
  • First, you’ll need to have a blank, custom VM.

This is straightforward, but I’ll walk through just so you have it.

  • From Fusion go File > New
  • From the ‘New VM’ wizard we would choose ‘Create Custom VM’

post-1517295-0-73172700-1467903882_thumb.png

 

  • Choose the OS version OS X 10.11
  • Choose ‘Create New Disk
  • Save the VM wherever you please
  • I customized it to add more RAM, bumping it to 4GB (4096MB) just to be on the safe side.

When you have your new blank VM, we now need to do 3 things:

  1. Create the installation media “sparse image”
  2. Copy contents of the installer into the new installation media sparse image
  3. Create a .vmdk which ‘points’ to the installation media sparse image (now filled with the contents of the installer) that we just created.

So to do that we start with Mac’s Disk Utility app. You’ll find it in your /Applications/Utilities folder (or do like I do and hit cmd-space and search Spotlight for ALL THE THINGS… ?

In Disk Utility go File > New Image > Blank Image… and use the settings I have in the image below (call the file whatever you like, but make sure it has the following:

post-1517295-0-87738800-1467903942_thumb.png

  • Size = 6GB (absolutely not smaller)
  • Format = OS X Extended (Journaled)
  • Encryption = none
  • Partition = Single Partition – GUID Partition Mac
  • Image Format = sparse disk image

This creates the blank slate that we will then copy the contents of the “Install 10.12 Developer Preview.app” into using ‘createinstallimage’ utility.

It should ‘mount’ the new image we just created, but if it’s not there you can mount it with Disk Utility or from the command line. Mine mounted automatically.

Once it’s mounted we can copy the contents of our installation app into the new sparse image.

For this, we jump down to the command line and run some commands.

First, let’s create our install media.

sudo /Applications/Install\ 10.12\ Developer\ Preview.app/Contents/Resources/createinstallmedia --volume /Volumes/macOS-10.12_DP --applicationpath /Applications/Install\ 10.12\ Developer\ Preview.app

I named the thing I created with Disk Utility ‘macOS-10.12_DP’ as you can see in the ‘Name’ field in the image above.

 

post-1517295-0-36893100-1467904051_thumb.png

 

Easy peasy… contents copied, new installation media is created with the sparse image we just created, filled with the contents of the installer .app we got from Apple.

Now, let’s make sure the host Mac’s disk layout is okay with “diskutil list“:

(for clarity, $ is the prompt at the terminal, you do not need to type it)

$ diskutil list

It outputs something like the image below:

post-1517295-0-96837400-1467904186_thumb.png

 

We can see that I have the ‘Install 10.12 Developer Preview’ mounted as /dev/disk2s2. We need this device id because this is the prepared installation media that we’ll be installing from in the blank virtual machine we created earlier, and the disk number may change depending on what you have mounted on your system.

Now we use VMware’s ‘vmware-rawdiskCreator’ tool to create a .vmdk based on the sparse image we created.

The syntax is as follows:

<path to vmware-rawdiskCreator> create <device id> <partition id> <path to where we want the .vmdk to be saved> <bus type>

So a few things about that so we understand what’s happening:

  • vmware-rawdiskCreator is located within the Fusion app bundle itself, so we’ll point to that
  • create is the vmware-rawdiskCreator function that will create a new “raw” disk
  • <device id> is the /dev/disk2 that we saw earlier, yours may be different if you have other disks mounted.
  • <partition id> is 2 because it’s the 3rd partition on the ‘device’, and numbering starts at 0 (so 0 = first, 1 = second…)
  • We tell it where we want it to be saved, and in our case it will be within the VM bundle that we created at the beginning
  • <bus type> we choose lsilogic so that it behaves like a CD-ROM.

So, for me the command is as follows (all one line):

$ /Applications/VMware\ Fusion.app/Contents/Library/vmware-rawdiskCreator create /dev/disk2 2 ~/Documents/Virtual\ Machines.localized/macOS_10.12.vmwarevm/macOS_installationmedia lsilogic

It should take a few seconds to make the new .vmdk.

 

Okay, breathe… we are about to get the actual install started.

Because Fusion doesn’t support mounting raw disks using the UI, we just have to add it to the configuration file manually.

In the Virtual Machine Library window, right-click your newly created OS X 10.11 VM.

If you hold down the ‘Option’ key you’ll notice some options change… including ‘Edit config file in a text editor’ (I couldn’t take a screenshot due to the need for multiple key presses).

With the config file open in TextEdit, paste the following either at the bottom or with the other SATA device to keep them together (if you’re a little ocd about it like I am ?

sata0:2.present = "TRUE" 
sata0:2.fileName = "macOS_installationmedia.vmdk" 
sata0:2.deviceType = "rawDisk" 
suspend.disabled = "TRUE"

Notice the file we’re pointing at is ‘macOS_installationmedia.vmdk’… that’s the one we just created with our vmware-rawdiskCreator tool, and it’s a relative path meaning it’s in the same folder as the config file (.vmx) itself.

Close the document (if you’re using TextEdit it will save automatically).

Now all that’s left is to press ‘Play’ on the VM and go through the installation!

post-1517295-0-07602000-1467904328_thumb.png

It’s a bit of hack, but we’re working on making it just as seamless as installing current and earlier versions of OS X on Fusion.

To recap, we did the following:

  1. Downloaded the macOS 10.12 Developer Preview
  2. Created a blank VM with OS X 10.11 as the type
  3. Created a sparse disk for the install media
  4. Copied the install media to the sparse disk
  5. Used vmware-rawdiskCreator to create a .vmdk based on the sparse disk with the installation media
  6. Boot and install

Once the installation is done you can delete the extra hard disk because it’s no longer needed, and you can’t suspend the VM while a raw disk is attached.

Hope that helps folks looking to try the latest that Apple has to offer!

Let me know in the comments how that’s working out for you, if you have any suggestions, or need clarity on anything I’ve written here!

One minor nitpick After installation, one should shut down the VM (via macOS Shutdown option), then re-edit the VM configuration file and remove 4-line entries:

If you don’t delete these lines you end up with weird ‘bootcamp’ related errors… (we use rawdiskcreator for bootcamp installs, naturally)… And because it’s a raw-disk it can’t be deleted from the UI (because that would break a bootcamp VM so we disallow that).

sata0:2.present = “TRUE”
sata0:2.fileName = “macOS_installationmedia.vmdk”
sata0:2.deviceType = “rawDisk”
suspend.disabled = “TRUE” 

Thanks for the feedback, friends!

The install should work afterwards :D Here are some screenshot of the install process and the following fun hahahha

post-1517295-0-01839300-1467904693_thumb.png

post-1517295-0-74371400-1467904649_thumb.png

post-1517295-0-40105600-1467904671_thumb.png

post-1517295-0-60063300-1467904680_thumb.png

post-1517295-0-69492500-1467904690_thumb.png

post-1517295-0-66676200-1467904753_thumb.png

Link to comment
Share on other sites

post-1517295-0-02079000-1468268881_thumb.png

 

After installation of unofficial Vmware Tools, QE/CI are working and all seems to be perfect, except I cannot use Siri. Too sluggish at this point of it development.

 

post-1517295-0-39099400-1468268895_thumb.png

 

Sierra is working nicely now, with some SMBIOS tweaks made directly to the installation, since i am booting in VMWare natively without Clover.

 

post-1517295-0-56716000-1468268974_thumb.png

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Double check in Disk Utility the names and BSD names of your drives and mounted images. Syntax is very important.

The only problem is the /Applications/VMware\ Fusion.app/Contents/Library/vmware-rawdiskCreator.

I think it can't detect where my main drive [/] is.

The only problem is the /Applications/VMware\ Fusion.app/Contents/Library/vmware-rawdiskCreator.

I think it can't detect where my main drive [/] is.

'Unable to determine partition start sector(s).'

Link to comment
Share on other sites

I  am sorry to say your issue is way out of the scope of this guide. I really don't know where to start, because I have seen that issue with other apps in some other Hacks.. I can't really tell you a solution.. 

Link to comment
Share on other sites

  • 1 year later...

Sorry for bumping and thx for the nice Guide, but i found a much easier way without the 3 Steps.

 

I installed High Sierra on VMWare Fusion 10 that way.

 

1. Create a GPT formattet USB Pen Drive with createinstallmedia.

2. Create a new custom VM like you did above.

3. Created a new EFI -> BOOT Folder on my Desktop.

4. Paste & Copy original boot.efi from /usr/standalone to ~/Desktop/EFI/BOOT

5. Mount Pendrive EFI Partition

6. Copy EFI Folder from Desktop to EFI Partition

7. Run the the new Machine, then hurry up to Fusion Menu Bar, klick Virtual Machine and connect the Pendrive.

 

The new Machine now boot from the Pendrive....et voilá. When all is done, install VMWare Tools directly from the Fusion Menubar as usual.

post-564129-0-26431300-1507732128_thumb.png

post-564129-0-18339600-1507732212_thumb.png

post-564129-0-62166400-1507732245_thumb.png

post-564129-0-11407900-1507732256_thumb.png

post-564129-0-52787900-1507732272_thumb.png

Link to comment
Share on other sites

Sorry for bumping and thx for the nice Guide, but i found a much easier way without the 3 Steps.

 

I installed High Sierra on VMWare Fusion 10 that way.

 

1. Create a GPT formattet USB Pen Drive with createinstallmedia.

2. Create a new custom VM like you did above.

3. Created a new EFI -> BOOT Folder on my Desktop.

4. Paste & Copy original boot.efi from /usr/standalone to ~/Desktop/EFI/BOOT

5. Mount Pendrive EFI Partition

6. Copy EFI Folder from Desktop to EFI Partition

7. Run the the new Machine, then hurry up to Fusion Menu Bar, klick Virtual Machine and connect the Pendrive.

 

The new Machine now boot from the Pendrive....et voilá. When all is done, install VMWare Tools directly from the Fusion Menubar as usual.

Congrats :)

 

But you don't need to create the USB disk to boot the VM from, VMWare Fusion 10 can boot directly from macOS installer.app. It will detect the necessary files and then create the bootable volume. All you need to do is to drag or choose the macOS Installer.app

 

If I recall correctly this feature was first introduced in VMWare Fusion 9.

Cheers

post-1011040-0-49609000-1507743189_thumb.png

post-1011040-0-47345500-1507743195_thumb.png

post-1011040-0-24074500-1507743201_thumb.png

post-1011040-0-74721400-1507743207_thumb.png

post-1011040-0-61119400-1507743213_thumb.png

  • Like 1
Link to comment
Share on other sites

Congrats :)

 

But you don't need to create the USB disk to boot the VM from, VMWare Fusion 10 can boot directly from macOS installer.app. It will detect the necessary files and then create the bootable volume. All you need to do is to drag or choose the macOS Installer.app

 

If I recall correctly this feature was first introduced in VMWare Fusion 9.

Cheers

Wow...i never stop learning. Thx Dude  :thumbsup_anim:

 

Edit: It works great, but i wasn't able to install VMWare Tools directly from the Menubar as usual. It was greyed out, even after some reboots. I have manually mounted darwin.iso which is inside the Fusion App in VM's CD-Drive and was able to install the Tools.

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...