VMware Cloud Community
Leica
Enthusiast
Enthusiast
Jump to solution

Is it possible to run Mac OS X guests in ESXi nested?

Is it possible to run Mac OS X guests in ESXi that is running not on bare metal (like Apple XServe), but rather as a guest in VMware Fusion that is running on a MacMini computer?

After all the physical hardware is still Apple and one can run Mac OS X guests directly in VMware Fusion.

Thanks.

0 Kudos
38 Replies
admin
Immortal
Immortal
Jump to solution

Leica wrote:

One problem is that on boot up, ESXi does not load the applesmc module by default and I have to manually type the command each time. Why is that? Any way to fix it?

I believe that ESXi only loads the AppleSMC module if the vendor name, as reported by the BIOS, is Apple.  When running ESXi under Fusion, the vendor name is probably VMware.  I'll look into it.

As a possible workaround, see http://kb.vmware.com/kb/2043564.

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

Thanks for the fix. I put the "esxcfg-module applesmc" command in the local.sh file and now it works like charm.

Yes ESXi is showing the Manufacurer of the computer as "VMWare, Inc." and not "Apple, Inc."

So it seems that the newer generation Macs do not run ESXi due to the new SMC. And it seems that you guys have fixed it internally! So will you be releasing it in the next ESXi patch? The last one was released on Mar-7, so the next one is due within a month? Will it have this new "applesmc"? :smileygrin:

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> ich7m.present = TRUE
> smc.present = TRUE

ich7m.present = TRUE is not needed to for the .vmx file of the ESXi VM. Only 
smc.present = TRUE is needed.
0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> By the way, do you or do you not need to add quotation marks for TRUE and FALSE in the configuration files? I did because all the other lines had them too so I typed "TRUE" instead of just TRUE.

Both syntaxes are valid.

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> By the way I added those two lines to WMware Workstation on a PC and applesmc module still loaded successfully! Since it isn't an Apple should it not have refused? Just guessing...

It is supposed to work this way:

On non-Apple hardware, the applesmc driver will load in the ESXi VM, but a nested Mac OS VM will not boot properly (the graphical interface will never start).

On Apple hardware, the applesmc driver will load in the ESXi VM, and a nested Mac OS VM will boot properly to the graphical desktop.

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

This log shows that the VMX code (which runs the nested Mac OS VM) in the ESXi VM is unable to open the applesmc driver. So either the applesmc driver is not loaded, or it is not working.

I would suspect it is not loaded, because since ESXi is running inside a Fusion VM, the SMC device is virtual (and has not changed in a long time) and the ESXi applesmc diver should perfectly work with it.

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> This looks similar to Re: ESXi 5.x on new Apple Mac Mini 6,2 Late 2012 *NOT* working.

It does look similar, but it cannot possibly be the same issue:

o In this thread, the ESXi applesmc driver is talking to the virtual SMC exposed to it by Fusion. None of that code has changed in a long time and so it should work.

o In the other thread, the ESXi applesmc driver is talking to a physical SMC, whose ACPI resources have changed in newer Macs, so the driver is confused and fails to load.

Since this is not the same issue, the fix in the other thread (patched SMC driver) cannot possibly help.

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

I think your setup is very confused, possibly because you tested many things (unlocker, patched SMC driver, ...).

The patched SMC driver cannot possibly solve the problem you are seeing. To run a nested Mac OS guest on ESXi on Fusion, you only need 2 things:

1) add
  smc.present = "TRUE"
to the ESXi VM's .vmx file

and

2) run
  esxcfg-module applesmc
in the ESXi VM.

If you do this carefully, it should work. If it does not work, let us know, but I don't think it is possible that the patched SMC driver for ESXi can solve this problem.

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

<<Since this is not the same issue, the fix in the other thread (patched SMC driver) cannot possibly help.>>

Thanks for the replies, but I am confused. Nothing worked, except the patched ISO of the ESXi provied by via darius. That did the trick. Are you saying that the patched ISO was not needed and that the solution could have been done with the normal ESXi ISO as downloaded from VMware?

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

I posted my previous message before I saw your latest post.

By the way I have not used unlocker on this machine. I tried unlocker on a different machine previously and did not like it. So no unlocker here!

I will do what you say and report back later.

Many thanks for your help. Smiley Happy

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> Thanks for the replies, but I am confused. Nothing worked, except the patched ISO of the ESXi provied by via darius. That did the trick.

You might think that, but I believe that it is a coincidence.

> Are you saying that the patched ISO was not needed and that the solution could have been done with the normal ESXi ISO as downloaded from VMware?

Yes I am. The patched driver fixes an issue with a change made by Apple in physical SMC devices. The un-patched driver should work just fine with the virtual SMC device exposed by Fusion.

I'll try that config (Mac OS guest in ESXi in Fusion) myself when I have some time, just to be sure.

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

I will do a fresh install in Fusion of ESXi now following your instructions. Just one thing. The line, smc.present = "TRUE". Should I add this to the .vms file before I start installing ESXi? Or does it not matter?

By the way I will be using an ISO downloaded from the VMware web site, build number 838463, file name of VMware-VMvisor-Installer-201210001-838463.x86_64.iso.


0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> I will do a fresh install in Fusion of ESXi now following your instructions. Just one thing. The line, smc.present = "TRUE". Should I add this to the .vms file before I start installing ESXi? Or does it not matter?

It does not hurt to add smc.present = TRUE to the ESXi VM before you start installing ESXi in it, but I believe you can do it at any time, provided you do things in this order:

1) Power off nested Mac OS guest

2) Power off ESXi VM

3) Add smc.present to the ESXi VM.

4) Power on ESXi VM

5) Power on nested Mac OS guest

> By the way I will be using an ISO downloaded from the VMware web site, build number 838463, file name of VMware-VMvisor-Installer-201210001-838463.x86_64.iso.

You can also use ESXi 5.1 Update 1 (Build 1065491) which was released on Apr 25th, 2013.

0 Kudos
admin
Immortal
Immortal
Jump to solution

HPReg wrote:

You can also use ESXi 5.1 Update 1 (Build 1065491) which was released on Apr 25th, 2013.

...which should work well, regardless of the original problem, since it contains the fix for the newer Apple SMC hardware. 🙂

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

@HPReg

Success! It works! Smiley Happy

There was no need for the patched ISO. You were right. So I wonder what I was doing wrong before...

Anyway thanks!

Oh and what is the best way to get the "esxcfg-module applsmc" command running automatically each time ESXi boots up?

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

@jmattson,

So build 1065491 will work bare metal on the newer Macs without any tweaks? That is excellent news. Smiley Happy

I know you only officially support the (obsolete) XServe but I think you should add the MacMini to the list - it makes an excellent ESXi host.

Thanks for everything.

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> Success! It works! Smiley Happy

> There was no need for the patched ISO. You were right. So I wonder what I was doing wrong before...

Cool!

> Oh and what is the best way to get the "esxcfg-module applsmc" command running automatically each time ESXi boots up?

I believe the best at this point is what jmattson suggested earlier: see http://kb.vmware.com/kb/2043564 .

0 Kudos
HPReg
VMware Employee
VMware Employee
Jump to solution

> So build 1065491 will work bare metal on the newer Macs without any tweaks? That is excellent news. Smiley Happy

We believe so.

> I know you only officially support the (obsolete) XServe but I think you should add the MacMini to the list - it makes an excellent ESXi host.

Apple, as a hardware vendor, does not seem interested in certifying ESXi on the Mac Mini Smiley Sad

So we are trying to find a customer who would be willing to do it, and that is not easy.

But see http://www.virtuallyghetto.com/2013/04/installing-esxi-51-update-1-on-mac-mini.html : unofficially it works quite well Smiley Happy

0 Kudos
Leica
Enthusiast
Enthusiast
Jump to solution

I guess Apple are a bit too arrogant. Oh well everyone is bored of the iPhone anway so they will soon come down to Earth, like their stock price Smiley Wink

Anyway you guys rock :smileygrin:

0 Kudos