Jump to content

ESXi 5 Mac OS X Unlocker


Donk
 Share

817 posts in this topic

Recommended Posts

Ok, tried turning off vt-d.  No diff.  Compared boots from 1.3 and 1.2.  Some timing differences.  The biggest diff was that 1.3 said:

 

    svga: Start: SVGA max wxh=2560x1600 : host_bpp=32, bpp=32, num_displays=2

 

but 1.2 says:

 

    svga: Start: SVGA max wxh=1672x1254 : host_bpp=32, bpp=32, num_displays=1

 

Could that be relevant?

 

Bottom line is, something in my setup likes 1.2 but hates 1.3.  I have no tools to diagnose, so I'm relying on others.  I'm willing to run tests and try things (as I have been doing), but I'm still blind.

 

Looking for a bit of help...

Link to comment
Share on other sites

@Jaf, @osenevp:

 

Are you referring to using 1.3.0?  I am.

Is your hardware level (VM version) at 8 or 10.  Mine is 8

Are you using Haswell?  Mine is Haswell (4790)

Are you using the embedded graphics?  I am

Are you passing through any hardware?  I am not

What non-default BIOS setup did you do?  I disabled serial port and enabled vt-x and vt-d.  I realize bioses have different defaults, so any other comments here would be welcome.

 

@DONK

 

There is some functional difference between 1.2.0 and 1.3.0.   I followed the instructions (simple as they are!) very, very carefully, yet 1.2.0 works and 1.3.0 doesn't.

Could it possibly matter that I don't have a local disk?

Could Haswell (and Z97 chipset) be a factor?

Could embedded graphics be a factor?

Could the onboard (intel) Ethernet be a factor (I use it).

 

I am running under 1.2.0, but I'm trying to prepare for the future.  For all I know, Yosemite will break 1.2.0 then I'm stuck.

 

Trying to think of everything possible, but running blind.  Need your help, please.

Link to comment
Share on other sites

@Jaf, @osenevp:

 

Are you referring to using 1.3.0?  I am.

Is your hardware level (VM version) at 8 or 10.  Mine is 8

Are you using Haswell?  Mine is Haswell (4790)

Are you using the embedded graphics?  I am

Are you passing through any hardware?  I am not

What non-default BIOS setup did you do?  I disabled serial port and enabled vt-x and vt-d.  I realize bioses have different defaults, so any other comments here would be welcome.

 

@DONK

 

There is some functional difference between 1.2.0 and 1.3.0.   I followed the instructions (simple as they are!) very, very carefully, yet 1.2.0 works and 1.3.0 doesn't.

Could it possibly matter that I don't have a local disk?

Could Haswell (and Z97 chipset) be a factor?

Could embedded graphics be a factor?

Could the onboard (intel) Ethernet be a factor (I use it).

 

I am running under 1.2.0, but I'm trying to prepare for the future.  For all I know, Yosemite will break 1.2.0 then I'm stuck.

 

Trying to think of everything possible, but running blind.  Need your help, please.

 

The actual code that patches the vmx files is actually the same in 1.2.0 and 1.3.0 the only difference is the way the code is run. The code is not applied to the OS X guest so Yosemite should run. Well the same patch on Workstation allows Yosemite to run. There has to be something else causing the problem, and the obvious thing is the CPU, as all the other differences would not be passed through to the guest. One suggestion can you run a sha1sum against the /bin/vmx, /bin/vmx-debug and /bin/vmx-stats files for 1.2.0 and 1.3.0 to see if they are identical.

 

BTW - I must point out none of this works on ESXi6 and I have no solution currently. So don't go past 5.5.

Link to comment
Share on other sites

Brilliant idea with sha1sum.  I saw that the 1.3.0 didn't actually patch.  Most things now make perfect sense.

 

So I ran the following from ssh (logged in as root) and got these results (hand typed, so ignore my typos):

 

/vmfs/volumes/<path to scratch partition>/osx # ./Unlocker.ESXi /scratch/osx

Patching /scratch/osx/vmx

open failed Permission denied

 

ls -l on the /scratch/osx is attached.  Note that the three files to be patched are rx, not w!

 

Assuming those three files must be "w" for the script to work (duh), I would ask why they aren't, and what change should be made by me (or by the installer) to make them w.  Another subtle difference of my setup is that my persistent scratch is on an NFS datastore.

 

Speaking of persistent, thanks for sticking with me through my problem!  Hope it is very near complete resolution.

 

ls -l.txt

Link to comment
Share on other sites

Brilliant idea with sha1sum.  I saw that the 1.3.0 didn't actually patch.  Most things now make perfect sense.

 

So I ran the following from ssh (logged in as root) and got these results (hand typed, so ignore my typos):

 

/vmfs/volumes/<path to scratch partition>/osx # ./Unlocker.ESXi /scratch/osx

Patching /scratch/osx/vmx

open failed Permission denied

 

ls -l on the /scratch/osx is attached.  Note that the three files to be patched are rx, not w!

 

Assuming those three files must be "w" for the script to work (duh), I would ask why they aren't, and what change should be made by me (or by the installer) to make them w.  Another subtle difference of my setup is that my persistent scratch is on an NFS datastore.

 

Speaking of persistent, thanks for sticking with me through my problem!  Hope it is very near complete resolution.

 

That's great you found the issue. Guess that is an NFS share which has different permissions to the FAT based scratch partition. I have 2 test versions I am working on and would love you to test them out. The first just moves and changes the chmod commands. Second test is a bit different but I have decided to see if creating a new ramdisk and saving the changes there would be a better option. Independent on how booted, and what disks and filing systems are in use. I will let you know once I upload them somewhere.

Link to comment
Share on other sites

The uploads are here http://www.filedropper.com/archive_89.

 

local-1.sh - uses scratch partition and should correctly set permissions on non-FAT folders

local-2.sh - uses a RAM disk mapped to a folder /unlocker

 

Could you please try these tests:

  1. Copy each one in turn by copying to /etc/rc.local.d/local.sh please?
  2. Check each has execute permissions or chmod +x on them
  3. Reboot
  4. Check sha1sum of patched files
  5. Check your VM

I am leaning towards the RAM disk option as is more independent of variables such as boot from SAN, stateless boot and so on.

 

Appreciate the help and long waits between posts, work has been busy had to take precedence.

Link to comment
Share on other sites

Both versions confirmed to work by sha1sum and VM booting.

 

Note, not surprisingly, I had to chmod +x after copying the local.sh files into /etc/rc.local.d.  I'm sure that isn't a problem if the installer is used.

 

I saw the ramdisk remains after patching the files.  Would it be tidier to remove the ramdisk at the end of local-2.sh?

 

Also, make no mistake about it.  I appreciate YOUR help (and I did tell you I was still working with 1.2.0, so no urgency).

Link to comment
Share on other sites

That's great. I cannot remove the RAM disk as that is where the files are symlinked to from bin folder. All the ESXi root fs is basically a set of overlaid RAM disks so adding a small 100MB one should not be too bad. I have a bigger change to come and would be pleased if you could also try that out. If that all works will create a new release.

Link to comment
Share on other sites

Yeah, I forgot they were symlinked.  I agree 100MB is trivial.

 

I would be very willing to help out by testing.

 

Well here is the final test version http://www.filedropper.com/esxi-unlocker-131. I have removed the base64 encoded C++ executable with a bit of Python code. Smaller, neater and don't need to cross-compile for ESXi. Let me know how it goes.

Link to comment
Share on other sites

Link is broken.  Please repost. Just retried with "open in new tab" and it worked.  Strange.

 

Also, either you are doing a bit of work on the west side of the pond or you are a VERY early riser!  Genius never sleeps.

Link to comment
Share on other sites

Again I can confirm success, this time with 1.3.1.  I simply copied the zip to a datastore, then in putty unzip <zipfile> then ./install.sh.  Worked without any monkeying around.

 

A small note that I assume you expected.  The sha1sums were different from 1.2.0/1.3.0.

Link to comment
Share on other sites

OK thanks for confirmation it works. The sha1sum may be a little different as just patching minimum in the vmx executables. Will double check but the patches worked for me ith Mavericks guest.

 

I am in Manchester in the UK, so guess early riser on the east of the pond.

Link to comment
Share on other sites

Donk,

 

Any benefits from moving to 131 over 130 for ESXi 5.5?

 

 

Hi MSoK

 

If 1.3.0 works ok for you then there is no big benefit . For those who have a scratch partition on something like NFS, yes, as it allows them to patch correctly. Basically completely removed need or scratch partition and now uses a RAM disk mapped to a folder. Should also be OK for those who load the vCenter code needed for management via vCenter.

Link to comment
Share on other sites

I have an AMD Phenom X6 1090T running ESXi 5.5. I have read through this thread and people seem to have been able to get OSX to run. I was hoping to start with Snow Leopard as I have a disk for that. I then wanted to upgrade to 10.8 (as I wish to get the install disk) and then 10.9 (to get the install disk).

Would anyone like to give me help? I have added the cpuid information (all that I could find from various posts, overwriting the previous attempts) I have installed the unlocker. I get the grey apple screen then vmware just reboots. I just recently tried doing the launch efi shell and boot -v but just get the same without any extra verbose output.

Really a guide that says do this, do that and provide these logs if it fails would be awesome.

Thanks for all your hard work on the unlocker and general Apple OSX enthusiest work.

Link to comment
Share on other sites

There are many install guides for OSX using Donk's Unlocker on the web.  Some are Mavericks, some earlier versions.

 

Search for:  Tickett's Blog Mac OS X Lion on ESXi 5

 

There is also another guide that shows how to create a Mavericks bootable USB installer.  It varies slightly based on what OSs you have available to you.  I assume you don't have OSX yet (based on your plan to install SL first) so the most likely is Windows.  No matter what they say, you need a 32GB USB.  As I recall, the compressed install image for 10.9.0 is 9GB and uncompressed it is 17GB.  Hence you need >17GB to make the USB.  Google mavericks install usb from windows transmac. a good one is on macrumors thread 1682784.

 

You can find the mavericks image many places.  DL from App store, many torrents around...

Link to comment
Share on other sites

Unfortunately it doesn't look like I'll be able to use a pure ESXi solution to run OSX. The only way I have got it to run is to use Nawcom's with the profile as some Windows 64bit. I can get 10.6.8 installed but I haven't been able to access the App Store to download the next versions. It says it can not determine my model or something like that.

Link to comment
Share on other sites

I hope you saw Donk's comment about AMD.  Your original post said "AMD" and the stock OS X will not run on AMD.   That is quite likely your problem.

 

You must use an Intel CPU or patch any copy of OSX you wish to run.  Not familiar with Nawcom, but I assume it is a patched kernel.  App store inaccess is probably the result of bad patching.  If you can access App Store, what you would download would need patching.  Note that there are again many web sites showing how to patch OSX to run on AMD.  There are also many patched versions available on the web (that is the route I would take, though I tend not to trust anyone).  Never done it myself.

Link to comment
Share on other sites

I hope you saw Donk's comment about AMD.  Your original post said "AMD" and the stock OS X will not run on AMD.   That is quite likely your problem.

 

You must use an Intel CPU or patch any copy of OSX you wish to run.  Not familiar with Nawcom, but I assume it is a patched kernel.  App store inaccess is probably the result of bad patching.  If you can access App Store, what you would download would need patching.  Note that there are again many web sites showing how to patch OSX to run on AMD.  There are also many patched versions available on the web (that is the route I would take, though I tend not to trust anyone).  Never done it myself.

Hi keithl, thanks for the reply. I have actually managed to get it going with the nawcom mod CD. It is indeed using a different kernel. The goal was to download OSX ML as I wanted it available on a USB as I am a computer tech but don't currently own a usable mac. I have succeeded in this goal and now I am going to install ML and do the same for mavericks. That's the ultimate goal, to have install media for each of the OSes and if 10.9 works fine I might try pass through my GTX470 softmodded to be a quadro 5000 and see what I can achieve. I could possibly go further with the OSX 10.6.8 install and get it working perfectly, but that would be just wasting time and energy. Now on to challenge two, ML.

 

I had seen that people had used the unlocker and then put some cpuid codes in the vmx file. Someone indicated doing that with AMD and having it run natively on ESXi (unless I misunderstood), that would have been great but appears impossible for me.

Link to comment
Share on other sites

I might try pass through my GTX470 softmodded to be a quadro 5000 and see what I can achieve. 

I had seen that people had used the unlocker and then put some cpuid codes in the vmx file. Someone indicated doing that with AMD and having it run natively on ESXi (unless I misunderstood), that would have been great but appears impossible for me.

elpres,

Some work was done to try and create a set of CPUID masks that would hide AMD features sufficiently for OS X to think it was running on an Intel CPU, and hence run without the need for a replacement kernel, i.e. Vanilla. While partially successful the mask needed to be CPU specific and proved unworkable, so for now you will need to continue with a modded kernel to run OS X on an AMD host machine.

 

In terms of graphics acceleration and pass through you might want to look at the following topics:

 

http://www.insanelymac.com/forum/topic/285733-graphics-acceleration-in-esxi-51-and-os-x-mountain-lion-vm/?p=1883583

 

http://www.insanelymac.com/forum/topic/267296-esxi-5-mac-os-x-unlocker/?p=2006727

Link to comment
Share on other sites

 Share

×
×
  • Create New...