[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] Mac OSX How-to



Pls cc: me with any replies.

 

On 7/26/16, 9:22 PM, "Xen-users on behalf of Steffan Cline"

<xen-users-bounces@xxxxxxxxxxxxx on behalf of steffan@xxxxxxxxx> wrote:

 

> Here are most of the links I have accumulated:

> http://www.contrib.andrew.cmu.edu/~somlo/OSXKVM/

> http://wiki.osx86project.org/wiki/index.php/Snow_Leopard_Server_on_Xen

> https://kernelnewbies.org/KernelProjects/x86-xen-efi

> http://blog.definedcodehosting.com/osx-qemu-kvm

> https://lime-technology.com/forum/index.php?topic=34864.0

 

Thanx for the links. The first one was good technical background. I found Dinesh's series of blogs useful:

 

1) http://www.sysprobs.com/tag/mac-on-windows/

2) http://www.sysprobs.com/hackintosh-10-6-7-snow-leopard-on-virtualbox-4-working-sound

3) http://www.sysprobs.com/create-iso-mac-installation-dvd-rip-mac-dvd-windows

 

Plus more technical background:

 

"TPM DRM" In Mac OS X: A Myth That Won't Die

http://www.osxbook.com/book/bonus/chapter7/tpmdrmmyth/

 

Dinesh's blogs use both VirtualBox and Vmware Player, the officially supported virtualization methods. I tried both, and succeeded with VirtualBox (VB). This post is peripherally related to Xen, in that I used a Xen hvm Windows 10 guest to get to know the two players. I have a dual boot system, Windows 10 and Fedora 24, and can run my Windows partition as a guest while booted into Xen. The conversion from bare metal to guest was straight forward enough, except that I had to recompile Xen with '--enable-ovmf', since I have an efi system. That wasn't straight forward - that code path needs a little love.

 

I tried various configurations in both VB and Vmware Player, and since my icore 5 system supports nested virtualization, tried out those configurations in the Windows guest. When they didn't work, I would reboot into Windows bare metal, and usually they didn't work there either! Just as I was at my wits end, I tried a link in post #3 for ImgBurn. This takes the retail dvd for Snow Leopard 10.6.3 (the last retail dvd - all newer OSX versions are only available from the Mac App Store, which only runs on a functioning OSX system), and copies it to a more accurate .iso than is possible with 'dd'. In fact, Apple plays tricks with the partition map on the retail disk, making the specification for the third and last partition on the disk span larger than the physical dvd media. ImgBurn correctly takes a 2G dvd and makes an 8G .iso. This worked as an install disk in VB much more successfully than the retail dvd. In fact, third party bootloaders (Chameleon, iBoot, Clover, etc.) are not needed, and are ignored.

 

First the downsides of the two players. Vmware Player was extremely disappointing to use. In a virtual guest, it kept complaining that Hyperv was installed. This was possible, since I had just upgraded from Windows Home to Pro, which included Hyperv. I searched the web, and found out how to disable Hyperv, and Vmware Player still complained that it was present. Then I specified viridian=0 in my xl .cfg for Windows, and found the real reason. The Player now was complaining about some (unspecified) hypervisor being present. IOW, it knew it was running in a virtual guest. The I tried it bare metal. You have to run an unlocker program to patch the Player, because out of the box, there is no machine type for Mac OSX. Unfortunately, there is no option for 'Mac OS X 10.6' per se, but rather 'Mac OS X Server 10.6'. So, even bare metal, the Player would start my vm, and then stop with the complaint that the install disk was not 'Mac OS X Server'. On top of that, Vmware Player does not support snapshots. Vmware Workstaton does, but that's a paid product. Snapshots are absolutely essential before upgrading from one version of Mac OSX to the next, and VB supports them.

 

VB is installable on 4 different hosts OSes - Linux, Windows, OpenSolaris (which these days would be OpenIndiana), and on an actual Mac. Since you can't run two different virtualization products, both using hardware virtuaization, at the same time w/o risking crashing your host, (and VB docs mention this), I chose to install in Windows. The only problem I had with VB in a guest is that it couldn't access the physical dvd drive on the host. It turned out that that was a permissions problem though - it worked fine when ran as Administrator. Admittedly, that is not an ideal solution, and as I said, the ImgBurn-ed .iso worked better anyway.

 

Also, buried deep in VB's docs was the limitation that you can only assign one cpu to your OSX vm. If you try two, during bootup, AppleCpuPowerManager panics. This is interesting because that's the same kext that panics when you try to run OSX in a vm, though for a different reason.

 

The only modification to Dinesh's #2 post is that I didn't put the dvd drive on the IDE controller - everything is on the Sata controller. And I used the ImgBurn-ed .iso instad of the retail disk. I've already updated from 10.6.3 to 10.6.8, and then 10.7.5 with no hiccups what so ever. And I'm patiently awaiting my next redemption code from Apple for 10.8. (Yes, I know that you can upgrade directly from 10.6.8 to 10.11.6 El Capitan, but I find it more educational to see what has changed from one version to the next.)

 

So the state of the art is that you still can't run all your guests under one virtualization product. Maybe what we need is a Type 0 hypervisor, that makes all the Type 1 & 2 solutions play nice with each other :-) So for now, I'm running Windows under Xen, OpenIndiana under straight Qemu, w/ no acceleration (yes, it's slow), and I have to reboot to play with OSX. I'm anxiously awaiting the next advance in technology!

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
https://lists.xen.org/xen-users

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.