VMware Communities
iPodShuffle
Contributor
Contributor
Jump to solution

Creating older Mac OS VM - "No operating system found"

I hope I'm posting in the right sub-forum. I'm using the free VMware Fusion Player license (application version 12.1.2 running on a 2020 Intel Mac running macOS 10.15.7). I tried installing Mac OS X 10.7 Lion downloaded from Apple's website here (I own the original DVD as well, but don't have an optical drive), yet I can't seem to install it.

I go to File --> New, click "Install from disc or image," select the corresponding InstallMacOSX.dmg disk image file, selecting the specific OS version (I tried selecting the 32-bit and 64-bit versions in separate attempts since I'm not sure which the linked installer is) and both times when the instance reboots, it says it couldn't find a hard drive or CD-ROM drive ("No compatible bootloader found" for each one). VMware then opens a window saying "No operating system was found." I get the same error when trying Mac OS X 10.8 Mountain Lion, and I haven't yet tried other OS versions.

I came across this help article but it reference Boot Camp and I am not using Windows in this case. I also came across this post which seems relevant, but my Mac is too new to run that older OS, so the InstallMacOSX.pkg contained within the disk image won't run (what it normally does is install and installer in the Applications folder, then you can open that and the computer restarts and begins the installation process).

Any tips to create a new virtual machine get a fresh installation up of the old operating system would be great. Thank you!

Labels (3)
Tags (1)
0 Kudos
1 Solution

Accepted Solutions
dempson
Hot Shot
Hot Shot
Jump to solution

I've explained the issue before, but haven't tried repeating the process yet with the recently available Lion and Mountain Lion installers.

From a brief check of the the "InstallOSX.dmg" files they are same structure as the previously available installers for macOS 10.10 Yosemite through macOS 10.12 Sierra, and most of the same rules apply.

You cannot use the "InstallOSX.dmg" file directly to create a VM. The disk image is not bootable. It contains a single installer package, which needs to be run through Apple's Installer application to create the "Install OS X [version name].app" in your Applications folder. The catch: you cannot do that unless your Mac is supported by that operating system. For recent Macs, the upper bound is the usual problem.

For Lion, you can only use the installer package on Mid 2012 or older Mac.

For Mountain Lion, you can only use the installer package on a Mid 2013 or older Mac.

(The lower bound varies: between Late 2006 and Early 2009 depending on the OS X version and model family.)

There is a workaround: the model check is bypassed if the installer package is used inside a VM. That means you can use the following process on a newer Mac with VMware Fusion:

1. Download the installer for the same version of macOS you are running, e.g. via App Store or one of Apple's support pages for downloading recent macOS versions (which does the download via System Preferences for macOS 10.13 High Sierra and later). This places an "Install macOS [version name].app" into your Applications folder.

2. Create a new macOS VM in VMware Fusion, for the version you've just downloaded. Point it to the installer application. When setting up the VM, note that you will require at least 10 GB of free space inside the VM, in addition to whatever it normally needs.

3. Once the VM is created, proceed with installation of the recent macOS into the VM.

4. Once the installation is complete, go through initial setup.

5. Install VMware Tools in the VM.

6. Drag the Lion or Mountain Lion "Install OS X.dmg" file from the host into the VM.

7. Inside the VM, open the .dmg file and open the installer package. Proceed with installation. (It will probably complain about an expired certificate. I haven't got far enough yet to see whether you need to do any tricks like setting the clock back several years to allow installation to proceed.)

8. Once the installer completes, you will have an "Install OS X Lion.app" (or Mountain Lion) in the VM's Application folder. Drag that application back to the host.

9. You now have an install application which might be directly usable by VMware Fusion to create a Lion or Mountain Lion VM.

The reason I say might is that Lion and Mountain Lion predate the introduction of the createinstallmedia utility which was buried inside the installer application starting around 10.9 Mavericks. I don't know offhand whether VMware Fusion uses that utility, or whether it just needs the disk images inside the application. I created my Lion and Mountain Lion VMs so long ago that VMware Fusion may have required creating a bootable installer first, and there was a different process for that with Lion and Mountain Lion.

View solution in original post

10 Replies
dempson
Hot Shot
Hot Shot
Jump to solution

I've explained the issue before, but haven't tried repeating the process yet with the recently available Lion and Mountain Lion installers.

From a brief check of the the "InstallOSX.dmg" files they are same structure as the previously available installers for macOS 10.10 Yosemite through macOS 10.12 Sierra, and most of the same rules apply.

You cannot use the "InstallOSX.dmg" file directly to create a VM. The disk image is not bootable. It contains a single installer package, which needs to be run through Apple's Installer application to create the "Install OS X [version name].app" in your Applications folder. The catch: you cannot do that unless your Mac is supported by that operating system. For recent Macs, the upper bound is the usual problem.

For Lion, you can only use the installer package on Mid 2012 or older Mac.

For Mountain Lion, you can only use the installer package on a Mid 2013 or older Mac.

(The lower bound varies: between Late 2006 and Early 2009 depending on the OS X version and model family.)

There is a workaround: the model check is bypassed if the installer package is used inside a VM. That means you can use the following process on a newer Mac with VMware Fusion:

1. Download the installer for the same version of macOS you are running, e.g. via App Store or one of Apple's support pages for downloading recent macOS versions (which does the download via System Preferences for macOS 10.13 High Sierra and later). This places an "Install macOS [version name].app" into your Applications folder.

2. Create a new macOS VM in VMware Fusion, for the version you've just downloaded. Point it to the installer application. When setting up the VM, note that you will require at least 10 GB of free space inside the VM, in addition to whatever it normally needs.

3. Once the VM is created, proceed with installation of the recent macOS into the VM.

4. Once the installation is complete, go through initial setup.

5. Install VMware Tools in the VM.

6. Drag the Lion or Mountain Lion "Install OS X.dmg" file from the host into the VM.

7. Inside the VM, open the .dmg file and open the installer package. Proceed with installation. (It will probably complain about an expired certificate. I haven't got far enough yet to see whether you need to do any tricks like setting the clock back several years to allow installation to proceed.)

8. Once the installer completes, you will have an "Install OS X Lion.app" (or Mountain Lion) in the VM's Application folder. Drag that application back to the host.

9. You now have an install application which might be directly usable by VMware Fusion to create a Lion or Mountain Lion VM.

The reason I say might is that Lion and Mountain Lion predate the introduction of the createinstallmedia utility which was buried inside the installer application starting around 10.9 Mavericks. I don't know offhand whether VMware Fusion uses that utility, or whether it just needs the disk images inside the application. I created my Lion and Mountain Lion VMs so long ago that VMware Fusion may have required creating a bootable installer first, and there was a different process for that with Lion and Mountain Lion.

ColoradoMarmot
Champion
Champion
Jump to solution

Have you tried just dragging the .app into the new VM install wizard window?  Last I built one (snow leopard server), magic happened and it just worked.

0 Kudos
iPodShuffle
Contributor
Contributor
Jump to solution

Wow, thank you for the detailed how-to! This worked perfectly.

I'll just add that the installer did mention the certificate being expired but I was able to click a button to continue anyway, without needing to change the system clock or anything like that.

I had previously had trouble dragging and dropping to and from the virtual machine but your note to install VMware Tools on the VM was a necessary step I was missing.

I don't know the technical reason, but as dempson mentions, the InstallMacOSX.dmg disk image and the resulting InstallMacOSX.pkg installer aren't usable by VMware to install the OS. It's only the resulting Install OS X Mountain Lion.app application (or corresponding name depending on the OS version) that is usable as an installer. And as they explained, newer Macs can't run the older OSes, so I did this all within an existing VM running the same OS version as my computer itself.

What is the reason that the technical check for OS version / hardware support gets skipped when being run within a VM? Did Apple do something intentionally to make it easier to run virtual machines, or is it because it can't determine the hardware and it just therefore allows it?

Thank you!

0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

@iPodShuffle wrote:

What is the reason that the technical check for OS version / hardware support gets skipped when being run within a VM? Did Apple do something intentionally to make it easier to run virtual machines, or is it because it can't determine the hardware and it just therefore allows it?

In the installer script for macOS 10.7 Lion and later, there is an explicit check for whether it is running in a VM. In that case it bypasses the model check. Using Lion as an example, the Distribution file in the installer package contains a function isVirtualMachine() which is called from isSupportedPlatform(). It detects the VM by looking for "VMM" in the output of sysctl machdep.cpu.features. If not running on a VM, it checks a board-id retrieved from the I/O registry against a list of supported values, which can be mapped to specific Mac models.

This is clearly intentional, and I expect the reason was to allow running macOS in a VM on a Mac model which didn't support that macOS version.

10.6 Server's installer doesn't do a similar check, and from a quick glance it appears to not even be checking for future unsupported models (or past ones - it only has checks left over from the Leopard installer which exclude things like G3s and Macs slower than 800 MHz). You can't even boot the 10.6 install DVD on a Mac unless its model identifier is in a list of supported models, so the install script may be relying on that. I can't see a special case to allow the disc to boot in a VM (it may be buried in lower level code). One possibility is that Fusion could pretend to be a particular Mac model when booting the 10.5 and 10.6 Server installers. In normal operation, its model identifier is "VMware7,1".

Thank you!


You're welcome. Glad you were able to get it working.

Snow_Leopard
Contributor
Contributor
Jump to solution

How, exactly and precisely, do you "Point it to the installer application"?

 

Thanks.

0 Kudos
Snow_Leopard
Contributor
Contributor
Jump to solution

How, exactly and precisely, do you "Point it to the installer application"?

 

Thanks.

0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

At least in the older versions of VMware Fusion I'm familiar with and the one I have handy (Fusion 12.1.2 running on macOS Catalina):

For each step where you need to create a macOS VM and and have already got the "Install macOS [version].app" file using the previous instructions:

  • Click on the + button above the list of VMs and choose New. This brings up a sheet with "Select the Installation Method".
  • Go to your Applications folder and drag the "Install macOS [version].app" application onto the rectangle in the above sheet which says "Install from disc or image". [This is what I meant by "Point it to the installer application".]
  • The application should be accepted and appear in a revised sheet which now says "Create a New Virtual Machine"
  • Click Continue.
  • Customize settings if necessary (e.g. you may want more storage).
  • Click Finish to proceed with creating the VM.

I didn't take it any further as I don't actually want to create another VM at the moment, but from memory the next part is the VM starts up into the macOS installer, which it mounts from the disk image inside the application.

One problem you might run into is if you managed to download a "stub only" version of the installer, which is a potential issue with the installers for macOS High Sierra and later where Apple split the download into two stages.

If you run into that problem, you may need to use the createinstallmedia command line tool inside the stub installer to create a bootable installer on another volume, then use that to set up the VM instead of using the application directly.

0 Kudos
Snow_Leopard
Contributor
Contributor
Jump to solution

Thanks, @dempson 

For the minor technical details regarding "you may need to use the createinstallmedia command line tool inside the stub installer to create a bootable installer on another volume" this is a useful post:

https://communities.vmware.com/t5/VMware-Fusion-Discussions/Fusion-13-macOS-12-quot-Unable-to-create...

0 Kudos
Technogeezer
Immortal
Immortal
Jump to solution

You might also want To take a look at the open source Mist (macOS Installer Super Tool) found at https://github.com/ninxsoft/Mist to generate bootable installer images or installer apps. 

<edited to reflect the proper name of the utility>

- Paul (Technogeezer)
Editor of the Unofficial Fusion Companion Guides
Snow_Leopard
Contributor
Contributor
Jump to solution

Thanks Technogeezer

 

That's an amazing tool. I appreciate the reference to Mist. I downloaded it and I'm very impressed. Well done.

0 Kudos