In other words, this site is pretty safe...

How can I run OSX (desktop not server) in VMWare?
Yes, you can run OSX on VMWare. Yes, VMWare tools installs perfectly.
Now the trick is that according to the Apple licenses you are only allowed to run OSX Server on a virtual machine. So when you create a new OSX virtual machine in VMWare it actually makes sure your are running/installing the server version of the operating system by checking that the file "/System/Library/CoreServices/ServerVersion.plist" exists.
Step 1 - Creating a DMG image with includes the server file
What I did first is make a dmg image of the Snow Leopard installation disc using disk utility.
Then i converted the read only dmg into one i could add the file to using the following command from terminal:
hdiutil convert MacOSX_Install_DVD.dmg -format UDRW -o MacOSX_Install_DVD_RW.dmg
After that I mounted the dmg, and created the missing file using the following command from terminal:
touch "/Volumes/MacOSX_Install_DVD_RW/System/Library/CoreServices/ServerVersion.plist"
Then ejected the dmg.
Step 2 - Install OSX
Just install from dmg the same way you would install the server version. After installation using either the terminal or Finder, navigate inside the VM and edit the *.vmx file.
Find the line that reads:
firmware = "efi"
Change it to read:
firmware = "bios"
Step 3 - Install the missing file again
Reboot from the dmg again, and create the missing server file in the hard drive of the virtual machine from terminal:
touch "/Volumes/Macintosh HD/System/Library/CoreServices/ServerVersion.plist"
Should be it.
Note for Experts
There is another method to be sure VMWare doesn't check the ServerVersion.plist file, which is by replacing the signature files. I would say that this is for experts only, since it involves command lines and openssl. if you don't understand it, don't even try, since it could really damage your computer.
Open terminal and type:
sudo bash
Then:
cd "/Library/Application Support/VMware Fusion/isoimages"
mkdir -p original
mv darwin.iso tools-key.pub *.sig original
perl -n -p -e 's/ServerVersion.plist/SystemVersion.plist/g' < original/darwin.iso > darwin.iso
openssl genrsa -out tools-priv.pem 2048
openssl rsa -in tools-priv.pem -pubout -out tools-key.pub
openssl dgst -sha1 -sign tools-priv.pem < darwin.iso > darwin.iso.sig
for A in *.iso ; do openssl dgst -sha1 -sign tools-priv.pem < $A > $A.sig ; done
Hope this helps.
- 8615 reads
- Login to post comments