***GUIDE*** Mac OS X 10.11 El Capitan – VM on unRAID


Recommended Posts

Not sure if it helps, but it seems the card is not recognized out of the box by OS X http://www.tonymacx86.com/threads/radeon-compatibility-guide-ati-amd-graphics-cards.171291/. Maybe you can find any interesting post on that thread regarding your card?

 

Thanks, I hadn't seen that thread. But it is a little confusing. They do not list 6450 as a compatible card, but there are many reports of the original 6450 working out of the box, including archedraft in his guide, as well as folks in that thread. Maybe because the hdmi audio doesn't work out of the box, they left it out of the list.

 

Anyway, I was playing around with kextcache and such and kind of nuked my install :-) It no longer boots. I also ordered another cheap gpu, if that doesn't work, I'll give up.

Link to comment

Not sure if it helps, but it seems the card is not recognized out of the box by OS X http://www.tonymacx86.com/threads/radeon-compatibility-guide-ati-amd-graphics-cards.171291/. Maybe you can find any interesting post on that thread regarding your card?

 

Thanks, I hadn't seen that thread. But it is a little confusing. They do not list 6450 as a compatible card, but there are many reports of the original 6450 working out of the box, including archedraft in his guide, as well as folks in that thread. Maybe because the hdmi audio doesn't work out of the box, they left it out of the list.

 

Anyway, I was playing around with kextcache and such and kind of nuked my install :-) It no longer boots. I also ordered another cheap gpu, if that doesn't work, I'll give up.

 

If you have the space, make a backup of your OSX.img. That way when you blow it up (raises hand) you can easily put back a working image. I think you are on the right track, you will have to modify the drivers / install kexts to get it working (if it will even work at all).

Link to comment

Hello!

 

Well I've got some news, mostly good ones. I was able to install El Capitan without problems following the guide, I've also received today the Radeon HD5770 and it works out of the box on OS X. For getting HDMI Audio I had to install HDMIAudio.dmg that pete provided.

 

Hooooowever, there's some things that are not working. For example iMessage doesn't work, and it seems "some parts" of iCloud sync aren't either. I've found solutions for this but all are using Clover boot loader. I tried to follow the guide in page #4 of this thread to install it but I can't make it work:

 

Here's the options I chose

XUUKSYdz+

 

Here's the first warning saying that it's not made for this OS, but I downloaded the latest version

3ErgV52T+

 

And here's the error install

ktzHkJVy+

 

Still, I continue to follow the guide in case the error was not a problem. Here you can see how the folder of my EFI Clover looks like. As the guide says I download the Clover configurator and followed the steps to save a new config.plist

oq26Si1F+

 

Then I removed the chameleon boot loader from the XML (removed only this line)

<kernel>/mnt/cache/vm_images/enoch_rev2795_boot</kernel>

 

So my XML looked like this

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>OSX-El-Capitan-10.11-VNC</name>
  <uuid>0ba39646-7ba1-4d41-9602-e2968b2fe36d</uuid>
  <metadata>
    <type>None</type>
  </metadata>
  <memory unit='KiB'>12582912</memory>
  <currentMemory unit='KiB'>12582912</currentMemory>
  <vcpu placement='static'>18</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='1'/>
    <vcpupin vcpu='1' cpuset='2'/>
    <vcpupin vcpu='2' cpuset='3'/>
    <vcpupin vcpu='3' cpuset='4'/>
    <vcpupin vcpu='4' cpuset='5'/>
    <vcpupin vcpu='5' cpuset='6'/>
    <vcpupin vcpu='6' cpuset='7'/>
    <vcpupin vcpu='7' cpuset='9'/>
    <vcpupin vcpu='8' cpuset='10'/>
    <vcpupin vcpu='9' cpuset='11'/>
    <vcpupin vcpu='10' cpuset='12'/>
    <vcpupin vcpu='11' cpuset='13'/>
    <vcpupin vcpu='12' cpuset='14'/>
    <vcpupin vcpu='13' cpuset='15'/>
    <vcpupin vcpu='14' cpuset='16'/>
    <vcpupin vcpu='15' cpuset='17'/>
    <vcpupin vcpu='16' cpuset='18'/>
    <vcpupin vcpu='17' cpuset='19'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-2.3'>hvm</type>
    <boot dev='hd'/>
    <bootmenu enable='yes'/>
  </os>
  <features>
    <acpi/>
  </features>
  <cpu mode='custom' match='exact'>
    <model fallback='allow'>core2duo</model>
  </cpu>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/mnt/cache/vdisks/Elcapitan/Elcapitan.img'/>
      <target dev='hda' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:00:20:30'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=03:00.0,bus=pcie.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=03:00.1,bus=pcie.0'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-mouse'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=redacted'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
  </qemu:commandline>
</domain>

 

BUT, when booting the VM the boot loader is not loaded, it get stuck in the BIOS screen saying "Booting from Hard Disk" (but it never find it)

 

Anyone have got ideas on what I'm doing wrong here? I'm using unRAID 6.1.9

 

Thanks a lot for this guide, I've been testing the VM and I think I will be perfectly capable to work on it. Note that I haven't optimised it with isocpu, etc. HD performance is not that awesome, but I guess with unRAID 6.2 and the new QEMU version + maybe an entire passthrough of a PCIe NVME SSD the performance could be ridiculously fast!

Link to comment

Not sure if it helps, but it seems the card is not recognized out of the box by OS X http://www.tonymacx86.com/threads/radeon-compatibility-guide-ati-amd-graphics-cards.171291/. Maybe you can find any interesting post on that thread regarding your card?

 

Thanks, I hadn't seen that thread. But it is a little confusing. They do not list 6450 as a compatible card, but there are many reports of the original 6450 working out of the box, including archedraft in his guide, as well as folks in that thread. Maybe because the hdmi audio doesn't work out of the box, they left it out of the list.

 

Anyway, I was playing around with kextcache and such and kind of nuked my install :-) It no longer boots. I also ordered another cheap gpu, if that doesn't work, I'll give up.

 

If you have the space, make a backup of your OSX.img. That way when you blow it up (raises hand) you can easily put back a working image. I think you are on the right track, you will have to modify the drivers / install kexts to get it working (if it will even work at all).

 

I was lucky i had an old hd6450 lying around, unsure of brand and I had no problem passing it through. It worked out the box i just had to install the hdmiaudio fix.

this is what my card looks like in raid devices if its any help??

05:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] [1002:6779]

Link to comment

Hello,

 

I've been trying more stuff with the OS X VM. So far it works quite good, there's still some things as I mentioned that doesn't seem to work like iMessage, etc. This seems to be easily fixed by using Clover (I guess using UEFI it's less hack-ish than BIOS) but I couldn't install it for now.

 

On the other side, I was able to passthrough USB devices alone without passing through the whole USB controller and it worked just fine, even leaving the line:

<key>PCIRootUID</key> <string>1</string> in the org.chameleon.boot.plist

 

Also App Store works just fine, I can download or buy apps without problems.

 

Would love to know if someone was able to install El Capitan and Clover and how is the process or at least through some light into what direction to follow. Have anyone tried creating a new OVFM VM and create a bootable USB with Unibeast (as you would do if you're going to install it on a native PC "Mackintosh") and see what happens?

Link to comment

Not sure if it helps, but it seems the card is not recognized out of the box by OS X http://www.tonymacx86.com/threads/radeon-compatibility-guide-ati-amd-graphics-cards.171291/. Maybe you can find any interesting post on that thread regarding your card?

 

Thanks, I hadn't seen that thread. But it is a little confusing. They do not list 6450 as a compatible card, but there are many reports of the original 6450 working out of the box, including archedraft in his guide, as well as folks in that thread. Maybe because the hdmi audio doesn't work out of the box, they left it out of the list.

 

Anyway, I was playing around with kextcache and such and kind of nuked my install :-) It no longer boots. I also ordered another cheap gpu, if that doesn't work, I'll give up.

 

If you have the space, make a backup of your OSX.img. That way when you blow it up (raises hand) you can easily put back a working image. I think you are on the right track, you will have to modify the drivers / install kexts to get it working (if it will even work at all).

 

I was lucky i had an old hd6450 lying around, unsure of brand and I had no problem passing it through. It worked out the box i just had to install the hdmiaudio fix.

this is what my card looks like in raid devices if its any help??

05:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] [1002:6779]

 

The first HD6450 (MSI) I bought had a different device id, and it wasn't recognized by OS X.

 

I bought a new one just to test ($19 after rebate), this time a Sapphire HD6540. This one has the same device id 1002:6779 as everyone else's and should be recognized as it is listed in the kexts.

 

However, when I boot the El Capitan VM with this card passed through, I get no picture, the VM log shows nothing, unraid syslog gets filled with DMAR errors (DMAR:[fault reason 06] PTE Read access is not set) and after 10 seconds, the server hard crashes. I mean hard. Console is frozen with the cursor blinking, no services are reachable by lan, no ssh or telnet, etc. I have to cut the power and restart.

 

I tried the pass through with both hostdev and qemu-arg and get the same result. Also tried with or without the vbios rom file. If I boot the same VM right after reboot without a gpu passed through but vnc instead, it starts up just fine.

 

I doubt it is the card, because it works great with Win 10, Ubuntu 16 and Openelec when passed through. I even passed both cards through to Win 10 and enabled Crossfire (was surprised it worked). I know, it is kind of pointless to crossfire two super weak cards, but it was a fun experiment :-)

 

I am totally at a loss.

 

Here's the xml I used the last time:

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>GUI-OSX-El-Capitan</name>
  <uuid>0ba39646-7ba1-4d41-9602-e2968b2fe37d</uuid>
  <metadata/>
  <memory unit='KiB'>4194304</memory>
  <currentMemory unit='KiB'>4194304</currentMemory>
  <vcpu placement='static'>6</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='2'/>
    <vcpupin vcpu='1' cpuset='3'/>
    <vcpupin vcpu='2' cpuset='4'/>
    <vcpupin vcpu='3' cpuset='10'/>
    <vcpupin vcpu='4' cpuset='11'/>
    <vcpupin vcpu='5' cpuset='12'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
    <kernel>/mnt/user/isos/enoch_rev2822_boot</kernel>
    <boot dev='hd'/>
    <bootmenu enable='yes'/>
  </os>
  <features>
    <acpi/>
  </features>
  <cpu mode='custom' match='exact'>
    <model fallback='allow'>core2duo</model>
  </cpu>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/mnt/user/domains/OSX/ElCapitan.img'/>
      <target dev='hda' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <model name='i82801b11-bridge'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <model name='pci-bridge'/>
      <target chassisNr='2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:00:20:30'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on,romfile=/mnt/user/isos/vbios.rom'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=02:00.1,bus=root.1,addr=00.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-mouse'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=*****intentionally masked*****'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
  </qemu:commandline>
</domain>

 

By the way, are you guys using the "GraphicsEnabler=Yes" in your chameleon.plist?

 

For reference, this is on a Supermicro X9SRL-F board with a Xeon E5-2670 cpu.

 

Thanks

Link to comment

I get the DMR warning every time OS X boots in my syslog as well so that's "normal". Try booting with only 2 CPU's instead of 6 and 4GB of ram.

 

By the way, are you guys using the "GraphicsEnabler=Yes" in your chameleon.plist?

Yes, I believe so. EDIT: I lied, I do not have GraphichsEnabler in my .plist at all.
Link to comment

Great to see this! :)

 

However, I used to run Hackintosh (for fun) and I never needed this "64_Character_OSK_Key".

What is it? And can I use one from an iMac /MBP and still use both the VM and the Mac's at the same time?

 

Thanks!

Yes, it is the same exact key for *all* macs, not specific to individual machines

Link to comment

I get the DMR warning every time OS X boots in my syslog as well so that's "normal". Try booting with only 2 CPU's instead of 6 and 4GB of ram.

 

By the way, are you guys using the "GraphicsEnabler=Yes" in your chameleon.plist?

Yes, I believe so. EDIT: I lied, I do not have GraphichsEnabler in my .plist at all.

 

Thanks, I tried 2 cores and 4GB and the same result. What's interesting is that, when I fire it up, I don't even see the bootloader.

 

So out of curiosity, I tried to install from scratch. Created a blank image, mounted the installation image and I get to the bootloader with the gpu passed through. It works fine as a basic vga device. Unfortunately, the bootloader did not like my wireless keyboard so I couldn't install it.

 

By the way, did everyone install it with vnc first, and then pass the gpu through? I'll try to find a wired usb keyboard so I can install and see if it works.

 

Thanks for the responses

Link to comment

I get the DMR warning every time OS X boots in my syslog as well so that's "normal". Try booting with only 2 CPU's instead of 6 and 4GB of ram.

 

By the way, are you guys using the "GraphicsEnabler=Yes" in your chameleon.plist?

Yes, I believe so. EDIT: I lied, I do not have GraphichsEnabler in my .plist at all.

 

Thanks, I tried 2 cores and 4GB and the same result. What's interesting is that, when I fire it up, I don't even see the bootloader.

 

So out of curiosity, I tried to install from scratch. Created a blank image, mounted the installation image and I get to the bootloader with the gpu passed through. It works fine as a basic vga device. Unfortunately, the bootloader did not like my wireless keyboard so I couldn't install it.

 

By the way, did everyone install it with vnc first, and then pass the gpu through? I'll try to find a wired usb keyboard so I can install and see if it works.

 

Thanks for the responses

 

I noticed you are using a newer version of the boot loader, I'm use the one in the guide v2795. Not sure if that could be the problem but might worth a try!

Link to comment

Question for people that have got this working... can you pass your array shares to be writeable from within the OS X VM? I want to keep the VM image small since it will be on my cache pool which is only 180GB. I want to use the OS X VM to download full size originals of my photos through the photos app. My current photos library is nearly 100GB. How would I make this happen without having to upgrade the capacity of my share pool?

 

Thanks!

Link to comment

Is it normal to take a long time for the progress bar to complete at the initial apple logo boot screen during the initial boot? Mine's been sitting for 20min at about 3/4 complete with no further movement... should I just restart it?

 

Got it. Forgot to change to “pc-q35-2.5” from “pc-q35-2.3".

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.