VMware Communities
tjluoma
Contributor
Contributor
Jump to solution

Cannot create a new VM from DMGs provided by Apple in October 2019

I have downloaded 3 DMGs from Apple (see below for URLs) with the intention of making VMs from them (on a Mac), but I cannot.

Apple has seemingly made these DMGs with the expressed intention of installing them on a Mac, and not making VMs. Even more, Apple seems to have made it intentionally difficult.

The DMG mounts to a package (.pkg) file. The .pkg will not run on any Mac which cannot run the version of macOS which it will install. I also assume it will not run if you are using a Mac which could use that version of Mac OS X but has a later version already installed.

I was able to extract the .app that the .pkg was meant to install, but the app lacked the “InstallESD.dmg” which is needed to actually do the installation. I manually extracted “InstallESD.dmg” and moved it to the ‘/Contents/SharedSupport/’ sub-folder of the app, and then tried to create the VM that way.

The process starts, but when it gets to the point of choosing where to install it, the installation fails with a message:

“This copy of the install OS X El Capitan application can’t be verified. It may have been corrupted or tampered with during downloading.”

The installation will not continue from that point.

(Note: I outlined these steps in greater detail at https://rhymeswithdiploma.com/2019/10/28/dmg-to-virtual-machine/ if you care to know more specifics.)

My question is: How can I make a VM from one of these DMGs?

Please note that I am only asking about running a macOS VM on Mac hardware.

If anyone wants to try this themselves, here are the URLs that I used and the version of Mac OS X that they relate to:

wget --continue --show-progress --progress=bar --output-document=InstallYosemite.dmg \

http://updates-http.cdn-apple.com/2019/cert/061-41343-20191023-02465f92-3ab5-4c92-bfe2-b725447a070d/...

wget --continue --show-progress --progress=bar --output-document=InstallElCapitan.dmg \

http://updates-http.cdn-apple.com/2019/cert/061-41424-20191024-218af9ec-cf50-4516-9011-228c78eda3d2/...

wget --continue --show-progress --progress=bar --output-document=InstallSierra.dmg \

http://updates-http.cdn-apple.com/2019/cert/061-39476-20191023-48f365f4-0015-4c41-9f44-39d3d2aca067/...

Tags (2)
Reply
0 Kudos
1 Solution

Accepted Solutions
dempson
Hot Shot
Hot Shot
Jump to solution

If you have a Mac which is too new to run Yosemite, El Capitan or Sierra and no access to an older Mac, then the following process works (tested with VMware Fusion 11.5 on a 2018 Mac Mini running Catalina, with Mojave and Sierra installers - this model can't boot anything older than Mojave):

1. Download the full installer for the version of macOS that your Mac is currently running or is able to run (High Sierra, Mojave or Catalina). The normal method via App Store gives you an installer application in your /Applications folder.

2. Use that installer application to create a VM and set it up. Install VMware Tools for convenience.

3. From inside the VM, open the .dmg file for the Yosemite, El Capitan or Sierra installer, and open the package. The installer recognises it is running in a VM and bypasses the model check, so it will create an installer application for the target version in the VM's Applications folder.

4. Copy the installer application for the older OS back to the host.

5. Use the installer application for the older OS to create a VM for the version you want.

I haven't tested the following but they should work too:

If you have an older Mac that can't run a newer version you want to put in the VM (e.g. Sierra on a 2009 or earlier Mac) then a similar process should work if you are able to download an installer application for Lion, Mountain Lion, Mavericks, Yosemite or El Capitan from your purchase history in App Store. Those installers are either unsigned or have an expired certificate, so using one to create a VM may require temporarily setting your clock back to before 2019-10-24.

A similar technique would allow creating a VM of Lion, Mountain Lion or Mavericks on a newer Mac - you first need an older Mac or a VM running Sierra or earlier to get the installer.

ADDENDUM:

I was able to use the Sierra VM I created at step 5 above to sign in to App Store, download the Lion installer from my purchase history, drag that application out to the host, and then use it to create a Lion VM on my 2018 Mac Mini. Three stage "bootstrap" but I got there in the end. No need to fiddle with the date: this particular installer is not signed.

I haven't tried Mountain Lion or Mavericks yet - those installers might behave differently.

View solution in original post

Reply
0 Kudos
10 Replies
wila
Immortal
Immortal
Jump to solution

Hi,

Sounds like the issue where the certificates for the apple install media expired on October 24th

See also:

Certificate used to sign older Apple software expiring on October 24, 2019 | Der Flounder

as for using direct download links... you might want to try the following instead:

Downloading macOS installers with updated signing certificates on macOS Catalina | Der Flounder

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
tjluoma
Contributor
Contributor
Jump to solution

> Sounds like the issue where the certificates for the apple install media expired on October 24th

It does… except that I downloaded them on October 28th.

> as for using direct download links... you might want to try the following instead:

If you scroll down to the "Update 10-28-2019" part of the 'derflounder' post, he notes that the newer 3 versions of macOS are in the Mac App Store, but the older 3 are direct download DMGs.

I also tried an older installer, and it made it through more of the installation process, but still failed with a similar error, presumably because of the expired certificates.

At this point I'm unsure whether it's even possible to make a VM out of any of these DMGs.

Reply
0 Kudos
wila
Immortal
Immortal
Jump to solution

Hi,

If you scroll down to the "Update 10-28-2019" part of the 'derflounder' post, he notes that the newer 3 versions of macOS are in the Mac App Store, but the older 3 are direct download DMGs

Yes I knew that. However as you did not mention in your opening post that you downloaded after 24th of October and are aware of the certificate issue I started out with the most likely answer.

Direct links have a danger of not getting updated. I just verified the El Capitan link in https://support.apple.com/en-us/HT206886 and that one is the same.

I don't know if apple did not update their link or if you are seeing another issue.

You can verify if your issue is a bad cert by messing with the time clock.

See Darius his excellent answer here:

Re: VMWare won't install OS X from installer from Network drive

Normally the old installers allowed you do drag and drop them onto the New VM wizard in VMware Fusion. If that doesn't work anymore then I would expect you need to go through a process like bogdam described here:

Re: macOS Catalina VMs do not run in VMware Fusion 11.1.0

Btw, saw your blog post, but I don't know if that is supposed to work or not.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

If you have a Mac which is too new to run Yosemite, El Capitan or Sierra and no access to an older Mac, then the following process works (tested with VMware Fusion 11.5 on a 2018 Mac Mini running Catalina, with Mojave and Sierra installers - this model can't boot anything older than Mojave):

1. Download the full installer for the version of macOS that your Mac is currently running or is able to run (High Sierra, Mojave or Catalina). The normal method via App Store gives you an installer application in your /Applications folder.

2. Use that installer application to create a VM and set it up. Install VMware Tools for convenience.

3. From inside the VM, open the .dmg file for the Yosemite, El Capitan or Sierra installer, and open the package. The installer recognises it is running in a VM and bypasses the model check, so it will create an installer application for the target version in the VM's Applications folder.

4. Copy the installer application for the older OS back to the host.

5. Use the installer application for the older OS to create a VM for the version you want.

I haven't tested the following but they should work too:

If you have an older Mac that can't run a newer version you want to put in the VM (e.g. Sierra on a 2009 or earlier Mac) then a similar process should work if you are able to download an installer application for Lion, Mountain Lion, Mavericks, Yosemite or El Capitan from your purchase history in App Store. Those installers are either unsigned or have an expired certificate, so using one to create a VM may require temporarily setting your clock back to before 2019-10-24.

A similar technique would allow creating a VM of Lion, Mountain Lion or Mavericks on a newer Mac - you first need an older Mac or a VM running Sierra or earlier to get the installer.

ADDENDUM:

I was able to use the Sierra VM I created at step 5 above to sign in to App Store, download the Lion installer from my purchase history, drag that application out to the host, and then use it to create a Lion VM on my 2018 Mac Mini. Three stage "bootstrap" but I got there in the end. No need to fiddle with the date: this particular installer is not signed.

I haven't tried Mountain Lion or Mavericks yet - those installers might behave differently.

Reply
0 Kudos
tjluoma
Contributor
Contributor
Jump to solution

3. From inside the VM, open the .dmg file for the Yosemite, El Capitan or Sierra installer, and open the package. The installer recognises it is running in a VM and bypasses the model check, so it will create an installer application for the target version in the VM's Applications folder.

A-ha!  Now that's the sort of creative thinking that I was hoping someone would have!

Running the installer inside the VM to get the installer app worked perfectly for El Capitan. I was able to make and boot a new 10.11 VM. Now I'm going to save a copy in its current "pristine" state so I don't even have to do this again and will always have a "clean" copy to go back to if I need/want.

Thank you very much!

Reply
0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

Glad it worked for you.

A small correction to my (already edited) previous message:

The Mac OS X Lion installer I re-downloaded only APPEARS to be unsigned. That is what Suspicious Package 3.5.1 reports if I examine the OSInstall.mpkg file inside InstallESD.dmg while running on macOS Catalina 10.15.1. If I do the same test in the same version of Suspicious Package running on macOS Mojave 10.14.6, it reports an expired certificate, as does an older version of Suspicious Package running on macOS Sierra 10.12.6. Therefore Catalina has changed something related to the certificates, or Suspicious Package can't test certificate status while running on Catalina (I'll try to narrow this down with more tests later).

Despite the expired certificate status, I was able to use the same Lion installer on a Mac running Mojave to create a new VM.

I'll test my Mavericks and Mountain Lion installers later to see if they also still work. Re-downloaded copies of both appear to be unsigned in Suspicious Package on macOS Sierra 10.12.6, so they differ from the Lion installer.

Reply
0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

Freshly downloaded Mountain Lion 10.8.5 and Mavericks 10.9.5 installers (from App Store purchase history, downloaded on a Mac running Sierra 10.12.6) also work to set up new VMs in VMware Fusion 11.5 running on Mojave 10.14.6, with no complaints about certificates and no need to adjust the date.

Reply
0 Kudos
brendanlynch
Contributor
Contributor
Jump to solution

Forgive me if I'm being somewhat vague on this, but this is certainly the solution I need to try and get right.

I have a copy of 'Install OS X El Capitan.app' which I saved to an external drive before upgrading when it was released. I have kept it since and now would like to create a VM of that OS version.

I have read your post about creating the install app inside a VM of Mojave, which I currently have. But I just can't get my head around how to create this installer from the VM. I can access the app file on the external drive, I can open its package contents and find InstallESD.dmg as well as the OSinstall.mpkg and resources, but I don't know how to proceed from there to create the installer that will prevent the errors the original poster referred to.

I'm hoping you can assist in clarifying what I need to look at in the VM to get this right as I'm just not understanding point number 3 in your reply to the OP.

I'm runnining OS X 10.14.6 as my main OS on a late 2017 MacBook Pro. I'm running VMWare 11.5 with a VM of Mojave. My objective is to create a VM of El Capitan with the install app on the external drive.

Many thanks.

Reply
0 Kudos
dempson
Hot Shot
Hot Shot
Jump to solution

I have a copy of 'Install OS X El Capitan.app' which I saved to an external drive before upgrading when it was released. I have kept it since and now would like to create a VM of that OS version.

A copy of the El Capitan installer you downloaded back in 2015 will have an expired certificate (as of late October 2019), so it will refuse to install without a workaround. If you try to use it normally to create a VM, you will get an error (before the OS install begins) that the installer is damaged.

Your easiest solution may be to simply set your Mac's clock back far enough (1 October 2019 is fine) then use the installer you have to create the VM as normal.

If you don't want to set your clock back, then you need to download a new copy of the El Capitan installer​ which now has a valid certificate. The complex procedure in my previous message is required if you want to do this but only have access to a Late 2016 or newer Mac which cannot boot El Capitan, because the downloaded disk image contains an installer package which won't run on newer Mac models, but will run inside a VM on newer Mac models. You need a new "Install OS X El Capitan.app" which that installer package will create.

My instructions in the earlier message won't make sense if you are working with an older "Install OS X El Capitan.app". They don't apply in that case because you already have the installer application (albeit one that won't work without a clock adjustment). They are for dealing with Apple's new distribution format for Yosemite, El Capitan or Sierra.

Reply
0 Kudos
brendanlynch
Contributor
Contributor
Jump to solution

Got it!

Thanks for your reply - appreciate it Smiley Happy

Reply
0 Kudos