**VIDEO GUIDE** How to Install MacOS Mojave or High Sierra as a VM


SpaceInvaderOne

Recommended Posts

@gridrunner

 

FYI: Clover 3974 (regular and patched version) fails to install on 10.12.3.

 

Anyone else having this issue?

 

What error are you getting installing it. As an alternative to installing with installer,you can just open the efi partition with EFI mounter and manually put the clover files into it.

My orginal video on installing sierra has those files in description (but not 3974) i cant link you 3974 to manually paste in as not at home :(

Sorry about that, user error. All fine.

 

Thanks for the video. Clover Configurator had an update so I went that route and configured it that way, mainly to ensure Nvidia drivers would stick. I also used Apple Remote Desktop instead of your solution, which works perfectly fine, no installs on guest required (just a share setting) and doesn't require me to register with a 3rd party. Note that I already had an ARD license otherwise it would have been a $80 expense.

Link to comment

New test for audio/video stability and core pinning in os x (for those who care)

 

For this one, I used one of my other servers with dual e5520 processors. Thread pairings as follows:

 

Proc 1

cpu 0 <===> cpu 8

cpu 1 <===> cpu 9

cpu 2 <===> cpu 10

cpu 3 <===> cpu 11

 

Proc2

cpu 4 <===> cpu 12

cpu 5 <===> cpu 13

cpu 6 <===> cpu 14

cpu 7 <===> cpu 15

 

Proc 2 isolated from unRaid.

 

vm1 with a gt730 gpu, assigned cores 4-7

vm2 no gpu, apple screen share, assigned cores 12-15

emulator pin 0-3 for both vm's

vm disk images located on same ssd

 

This cpu assignment was selected because it is accepted to cause audio/video issues when placing two vm's onto the same physical core(ht pairs).

 

Result

when vm2 was running cinebench with its cores at 100%, vm1 had zero audio/video issues streaming youtube, netflix, or blu-ray movies on vlc from a network server. No matter activities I did, I could detect no slow down, no lag,

 

 

 

 

 

Just for fun, I put both vm’s on the same thread/core:

 

vm1 with a gt730 gpu, assigned cores 4-7

vm2 no gpu, apple screen share, assigned cores 4-7

 

 

youtube videos and local blu-ray streamed with little video quality issues but audio was at times dirty and/or non functional (to be expected)  even when vm2 was only idling.

 

Interestingly, when cinebench pushed the shared cores at 100% during blu-ray playback, the video quality did not suffer at all, but as before, audio was less than desirable when it actually worked.

 

 

 

So in my case, it is still fine (if not better performance-wise) to put os x vm’s on not ht paired cores since it does not cause audio/video issues while retaining he benefits of higher performance when the other vm isn’t 100% active.

 

Why is like this?

 

I don't know if this is OS X specific in regard to not causing the audio/video issues that are said to occur in windows 10 with this core assignment , if it is the particular gpu that is less susceptible to audio noise in ht pinning, if it is due to the fact that I am using it on older enterprise equipment, or only a gpu on a single vm (though people have reported issues with gpu-less dockers causing problems on ht cores of vm’s.)

 

ok, no more tests for a while...

 

Thanks 1812 for taking the time to do all those tests. Interesting results. Would be interesting to see some the difference in between

 

Proc 1

cpu 0 <===> cpu 8

cpu 1 <===> cpu 9

cpu 2 <===> cpu 10

cpu 3 <===> cpu 11

 

Proc2

cpu 4 <===> cpu 12

cpu 5 <===> cpu 13

cpu 6 <===> cpu 14

cpu 7 <===> cpu 15

 

A

vm1  assigned cores 4-7
vm2  assigned cores 12-15

 

B

vm1  assigned cores 4-7,12-15
vm2  assigned cores 4-7,12-15

 

and see A or B gets higher scores.

Link to comment

New test for audio/video stability and core pinning in os x (for those who care)

 

For this one, I used one of my other servers with dual e5520 processors. Thread pairings as follows:

 

Proc 1

cpu 0 <===> cpu 8

cpu 1 <===> cpu 9

cpu 2 <===> cpu 10

cpu 3 <===> cpu 11

 

Proc2

cpu 4 <===> cpu 12

cpu 5 <===> cpu 13

cpu 6 <===> cpu 14

cpu 7 <===> cpu 15

 

Proc 2 isolated from unRaid.

 

vm1 with a gt730 gpu, assigned cores 4-7

vm2 no gpu, apple screen share, assigned cores 12-15

emulator pin 0-3 for both vm's

vm disk images located on same ssd

 

This cpu assignment was selected because it is accepted to cause audio/video issues when placing two vm's onto the same physical core(ht pairs).

 

Result

when vm2 was running cinebench with its cores at 100%, vm1 had zero audio/video issues streaming youtube, netflix, or blu-ray movies on vlc from a network server. No matter activities I did, I could detect no slow down, no lag,

 

 

 

 

 

Just for fun, I put both vm’s on the same thread/core:

 

vm1 with a gt730 gpu, assigned cores 4-7

vm2 no gpu, apple screen share, assigned cores 4-7

 

 

youtube videos and local blu-ray streamed with little video quality issues but audio was at times dirty and/or non functional (to be expected)  even when vm2 was only idling.

 

Interestingly, when cinebench pushed the shared cores at 100% during blu-ray playback, the video quality did not suffer at all, but as before, audio was less than desirable when it actually worked.

 

 

 

So in my case, it is still fine (if not better performance-wise) to put os x vm’s on not ht paired cores since it does not cause audio/video issues while retaining he benefits of higher performance when the other vm isn’t 100% active.

 

Why is like this?

 

I don't know if this is OS X specific in regard to not causing the audio/video issues that are said to occur in windows 10 with this core assignment , if it is the particular gpu that is less susceptible to audio noise in ht pinning, if it is due to the fact that I am using it on older enterprise equipment, or only a gpu on a single vm (though people have reported issues with gpu-less dockers causing problems on ht cores of vm’s.)

 

ok, no more tests for a while...

 

Thanks 1812 for taking the time to do all those tests. Interesting results. Would be interesting to see some the difference in between

 

Proc 1

cpu 0 <===> cpu 8

cpu 1 <===> cpu 9

cpu 2 <===> cpu 10

cpu 3 <===> cpu 11

 

Proc2

cpu 4 <===> cpu 12

cpu 5 <===> cpu 13

cpu 6 <===> cpu 14

cpu 7 <===> cpu 15

 

A

vm1  assigned cores 4-7
vm2  assigned cores 12-15

 

B

vm1  assigned cores 4-7,12-15
vm2  assigned cores 4-7,12-15

 

and see A or B gets higher scores.

 

place your bets... results in a couple hours!

Link to comment

I went with using my dual 6 core server because the dual 4 was busy with one of my kids using a vm on it and I didn't have the other 2 powered up.

It's essentially the same test, just a few more cores involved:

 

Thread pairings

Proc 1

cpu 0 <===> cpu 12

cpu 1 <===> cpu 13

cpu 2 <===> cpu 14

cpu 3 <===> cpu 15

cpu 4 <===> cpu 16

cpu 5 <===> cpu 17

Proc 2

cpu 6 <===> cpu 18

cpu 7 <===> cpu 19

cpu 8 <===> cpu 20

cpu 9 <===> cpu 21

cpu 10 <===> cpu 22

cpu 11 <===> cpu 23

 

 

vm1 6-11, vm2 18-23

emulator pin 1-2

326 325

329 326

329 325

 

vm1 & vm2 6-11, 18-23

emulator pin 1-2

336 334

335 334

334 338

 

If you do the math, it's a 2-4% improvement when you run both vm's on the same HT paired cores. Which is interesting because in previous tests when they were loaded on the same non paired cores, it delivered the worst results of all combinations.

 

So it's very slightly better (but not at all advisable) to run 2 vm's on 12 shared cores vs running them at 6 cores each on the other's ht pair... if you have to... but really shouldn't.... ha!

Link to comment

I am not an OSX guy so I don't visit this thread.  It was pointed out to me by someone that there was a discussion going on here about CPU pinning to VMs.  Your test results are interesting, but contrary in some cases to what seems logical on how to assign CPUs to VMs.

 

You seem to be concentrating on raw horse power and not dealing with latency in a VM.  While that is interesting in some cases, it may not apply to real world operation of a VM, like streaming video and audio.  I am assuming your VMs are OSX.  Most of the VM applications on unRAID are Windows or Linux, not OSX.  OSX may deal with hyperthread processors differently than Windows or Linux.

 

I started a post here http://lime-technology.com/forum/index.php?topic=49051.0 to discuss the topic so we could provide some guidance to those having issues in VMs or wanting to tweak their VMs.  My main focus was for those having latency issues in VMs that are used in media serving/hosting applications.

 

This is not a criticism of what you have done, but it seems by your posts that you are editing the XML file directly.  I see this all the time and highly discourage this practice.  Using the VM editor is best.  Let it set up all the XML file parameters.  There are other parameters that need to be set in the XML like cores and thread assignments.  These should not be done manually.  I will encourage LT to give us a way with the VM editor to do the emulator pinning, but they are concentrating on the 6.3 release and need to release it for the security updates.

 

If you feel you have some contribution to VM pinning and assignment, post on the topic I started and I will make changes to my OP and update it as we get more experience with CPU pinning and assignment.  That way we can keep the information in one place and make it easier for those wanting to experiment with it.  It has also been mentioned to me that a video describing VM tuning would be a good idea, but we need to be sure the video incorporates good information.

 

There are many things in unRAID that can affect a VM.  Many of the newer builds have large amounts of memory and I have found in my case with 32MB of memory that I had to tweak some disk buffering very low to achieve smooth operation of the VM.  My mouse was getting stuck and then jumping all over the place.  There is a plugin called Tips and Tweaks that allows adjusting disk buffering.  Networking can also affect VMs.

Link to comment

I am not an OSX guy so I don't visit this thread.  It was pointed out to me by someone that there was a discussion going on here about CPU pinning to VMs.  Your test results are interesting, but contrary in some cases to what seems logical on how to assign CPUs to VMs.

 

I know, it is completely backwards to everything in the cpu pinning thread. That's why it's interesting. And as I noted in certain cases, will create/contribute to audio distortion.  As I stated before, I do not know if it is the differences between os x and win 10, or some other factor. I have done no testing in win10.

 

You seem to be concentrating on raw horse power and not dealing with latency in a VM.  While that is interesting in some cases, it may not apply to real world operation of a VM, like streaming video and audio.  I am assuming your VMs are OSX.  Most of the VM applications on unRAID are Windows or Linux, not OSX.  OSX may deal with hyperthread processors differently than Windows or Linux.

 

I am concentrating on raw power, but in each case, when video/audio was tested, I noted the results.

 

It does apply to the real world application of my vm's, which I use daily for audio/video editing, web content creation, general web usage, and those other vm's running in my household concurrently. This is in addition to my batch network transcoding(not plex) which is also handled by vm's on a small cluster of machines. So cpu power is important to me, but as noted that also usually correlates to perfectly fine working audio/video with no lag or latency.

 

I started a post here http://lime-technology.com/forum/index.php?topic=49051.0 to discuss the topic so we could provide some guidance to those having issues in VMs or wanting to tweak their VMs.  My main focus was for those having latency issues in VMs that are used in media serving/hosting applications.

 

This is not a criticism of what you have done, but it seems by your posts that you are editing the XML file directly.  I see this all the time and highly discourage this practice.  Using the VM editor is best.  Let it set up all the XML file parameters.  There are other parameters that need to be set in the XML like cores and thread assignments.  These should not be done manually.  I will encourage LT to give us a way with the VM editor to do the emulator pinning, but they are concentrating on the 6.3 release and need to release it for the security updates.

 

You can't use the vm editor and run OS X. Many people have begged LT to incorporate this, but they won't due to perceived legal issues that may or may not actually be there. There are too many custom modifications needed to the xml, that if you tried to change any parameter with the vm editor, your custom and needed edits would be gone and the vm would not work. So you have to learn to edit xml manually for everything (short of nvram creation.) I know you can mess thing up royally, and believe me I have as part of the learning process. And I still make mistakes every now and then.

 

Additionally, in terms of topology assignment, I've found almost no difference in scores whether you present the vm a single proc with 8 single cores, or 4 ht cores, or 2 procs with 4 single cores. Basically the same. Again, this is OS X. It's not optimized like windows for virtual environments, which may play a part in all of this.

 

If you feel you have some contribution to VM pinning and assignment, post on the topic I started and I will make changes to my OP and update it as we get more experience with CPU pinning and assignment.  That way we can keep the information in one place and make it easier for those wanting to experiment with it.  It has also been mentioned to me that a video describing VM tuning would be a good idea, but we need to be sure the video incorporates good information.

 

Part of the reason I posted results in here is because everything I did was os x specific, and might confuse everyone else in the pinning thread. I think I've also asked for others to try and confirm my findings too, to determine if the results are consistent in OS X or a function of my equipment. I'm not ready to proclaim my way as the way for OS X, but I know my way works best on my setup, discovered and verified though trial and error.

 

 

 

There are many things in unRAID that can affect a VM.  Many of the newer builds have large amounts of memory and I have found in my case with 32MB of memory that I had to tweak some disk buffering very low to achieve smooth operation of the VM.  My mouse was getting stuck and then jumping all over the place.  There is a plugin called Tips and Tweaks that allows adjusting disk buffering.  Networking can also affect VMs.

 

All true. And I realize that the hardware I use was intended for virtualization on a much larger scale than I actually use it for, so I have quite a bit of overkill compared to most users on the forum. Which is part of the reason why my results need more testing/verification by others before it should be universally accepted. I have no idea why my results contradict everything in the cpu pinning thread. They should be discussed and subjected to scrutiny. As I stated, I have no idea the reason for the contrasting results, short of a few guesses. I have zero degrees in computer sciences and network administration. I'm on here to learn and to share what I've learned and discovered, just like everyone else. And try to find the best way to get the most out of my hardware.

 

Link to comment

I understand what you are saying.  I didn't realize that OSX wasn't supported.  Based on that you are right, your work should stay here and does not really apply to Windows or Linux.  As I said, I'm not an OSX guy.

 

BUT YOU COULD BE! lol.....

 

not a problem, and don't think I was attacking everything you were saying by taking it point by point. You covered many areas and I wanted to be sure to address them all properly.

Link to comment

I understand what you are saying.  I didn't realize that OSX wasn't supported.  Based on that you are right, your work should stay here and does not really apply to Windows or Linux.  As I said, I'm not an OSX guy.

It's not that OSX isn't supported on unraid, but the only legal way to run it is on Apple hardware. So, as long as you are running unraid on a Mac, you are fine. Limetech has decided not to put effort into supporting the minuscule market share of people who are interested in running unraid on a Mac, but if you are, there is nothing in unraid preventing you from setting up an OSX VM on said unraid Mac. Running OSX on any OTHER hardware besides Apple branded equipment is clearly against the OSX license agreement.

 

I. Other Use Restrictions. The grants set forth in this License do not permit you to, and you agree not to, install, use or run the Apple Software on any non-Apple-branded computer, or to enable others to do so. Except as otherwise permitted by the terms of this License or otherwise licensed by Apple: (i) only one user may use the Apple Software at a time, and (ii) you may not make the Apple Software available over a network where it could be run or used by multiple computers at the same time. You may not rent, lease, lend, sell, redistribute or sublicense the Apple Software.
Link to comment

Now I have been thinking today whilst driving home and stuck in traffic. so thought I would suggest my thoughts on the whats happening.

I dont think the guest operating system makes any difference to how to pin or assign cpus. What we are forgetting here is that

it is not the guest OS that controls the cpu assignment and use of our cores. So that shouldnt change for which guest os in being run?

To the guest it only ever has a vcpu.  It doesnt know if it is on a hyperthread on the host or not.

But host os will assign how those cpus are presented to the guest for instance in my osx vm i use this.

  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>

and then so sierra boots at the end of my xml i put

    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>

This way I get the osx OS to see my cpu like this. 1 cpu 4 cores

https://s30.postimg.org/rqw8enfwx/topology.png

topology.png

 

However I know alot of people dont use host passthrough mode on their OSX xml and use this

  <cpu mode='custom' match='exact'>
    <model fallback='allow'>Penryn</model>
    <vendor>Intel</vendor>
  </cpu>

This then the guest is seeing this as 8 single core cpus

https://s28.postimg.org/80c8abanx/no_topology.png

no_topology.png

 

So i would like to ask 1812 what his xml looks like for the cpu topology as I think this may cause a difference?

 

Link to comment

I understand what you are saying.  I didn't realize that OSX wasn't supported.  Based on that you are right, your work should stay here and does not really apply to Windows or Linux.  As I said, I'm not an OSX guy.

It's not that OSX isn't supported on unraid, but the only legal way to run it is on Apple hardware. So, as long as you are running unraid on a Mac, you are fine. Limetech has decided not to put effort into supporting the minuscule market share of people who are interested in running unraid on a Mac, but if you are, there is nothing in unraid preventing you from setting up an OSX VM on said unraid Mac. Running OSX on any OTHER hardware besides Apple branded equipment is clearly against the OSX license agreement.

 

I. Other Use Restrictions. The grants set forth in this License do not permit you to, and you agree not to, install, use or run the Apple Software on any non-Apple-branded computer, or to enable others to do so. Except as otherwise permitted by the terms of this License or otherwise licensed by Apple: (i) only one user may use the Apple Software at a time, and (ii) you may not make the Apple Software available over a network where it could be run or used by multiple computers at the same time. You may not rent, lease, lend, sell, redistribute or sublicense the Apple Software.

 

good thing I have a bunch of apple branded hardware to run it on!

Link to comment

Now I have been thinking today whilst driving home and stuck in traffic. so thought I would suggest my thoughts on the whats happening.

I dont think the guest operating system makes any difference to how to pin or assign cpus. What we are forgetting here is that

it is not the guest OS that controls the cpu assignment and use of our cores. So that shouldnt change for which guest os in being run?

To the guest it only ever has a vcpu.  It doesnt know if it is on a hyperthread on the host or not.

But host os will assign how those cpus are presented to the guest for instance in my osx vm i use this.

  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>

and then so sierra boots at the end of my xml i put

    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>

This way I get the osx OS to see my cpu like this. 1 cpu 4 cores

https://s30.postimg.org/rqw8enfwx/topology.png

topology.png

 

However I know alot of people dont use host passthrough mode on their OSX xml and use this

  <cpu mode='custom' match='exact'>
    <model fallback='allow'>Penryn</model>
    <vendor>Intel</vendor>
  </cpu>

This then the guest is seeing this as 8 single core cpus

https://s28.postimg.org/80c8abanx/no_topology.png

no_topology.png

 

So i would like to ask 1812 what his xml looks like for the cpu topology as I think this may cause a difference?

 

Currently I set no topology, using the second xml because in the past I've used topology settings with little to no effect including host passthrough. I don't have time right now but in the next few days, I'll run more benchmarks using topology and host passthrough for comparison.

Link to comment
  • 2 weeks later...

I've made great progress with installing macOS using the video in the OP. Thanks for that! However, I'm stuck on the final stage. MacOS loads up to the login screen and won't accept any keyboard or mouse input via VNC. I'm not sure if there's been a crash at this point but certainly I can't progress any further. Has anyone come across this before/ be able to help?

Link to comment

I've made great progress with installing macOS using the video in the OP. Thanks for that! However, I'm stuck on the final stage. MacOS loads up to the login screen and won't accept any keyboard or mouse input via VNC. I'm not sure if there's been a crash at this point but certainly I can't progress any further. Has anyone come across this before/ be able to help?

 

please post your xml for the vm. (just remove the osk key from iy before you post please) :)

Link to comment

Here we go. I've not changed it in any way. It's a vanilla copy from the XML posted in the OP.

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacOS</name>
  <uuid>ae2697b9-a43d-c0ed-764d-7ebcc9a29373</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Ubuntu" icon="arch.png" os="ubuntu"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='8'/>
    <vcpupin vcpu='1' cpuset='9'/>
    <vcpupin vcpu='2' cpuset='10'/>
    <vcpupin vcpu='3' cpuset='11'/>
    <vcpupin vcpu='4' cpuset='12'/>
    <vcpupin vcpu='5' cpuset='13'/>
    <vcpupin vcpu='6' cpuset='14'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/ae2697b9-a43d-c0ed-764d-7ebcc9a29373_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/VMs/macOS/macOS.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='nec-xhci'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' 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>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:51:66:48'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <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=REMOVED'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>
  </qemu:commandline>
</domain>

Link to comment

Here we go. I've not changed it in any way. It's a vanilla copy from the XML posted in the OP.

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacOS</name>
  <uuid>ae2697b9-a43d-c0ed-764d-7ebcc9a29373</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Ubuntu" icon="arch.png" os="ubuntu"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='8'/>
    <vcpupin vcpu='1' cpuset='9'/>
    <vcpupin vcpu='2' cpuset='10'/>
    <vcpupin vcpu='3' cpuset='11'/>
    <vcpupin vcpu='4' cpuset='12'/>
    <vcpupin vcpu='5' cpuset='13'/>
    <vcpupin vcpu='6' cpuset='14'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/ae2697b9-a43d-c0ed-764d-7ebcc9a29373_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/VMs/macOS/macOS.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='nec-xhci'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' 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>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:51:66:48'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <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=REMOVED'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>
  </qemu:commandline>
</domain>

 

 

ok give this xml a try i have edited it a bit.

The bits i changed were are in bold

</os>

  <features>

    <acpi/>

    <apic/>

  </features>

  <cpu mode='host-passthrough'>

    <topology sockets='1' cores='4' threads='2'/>

  </cpu>

  <clock offset='utc'>

<timer name='rtc' tickpolicy='catchup'/>

    <timer name='pit' tickpolicy='delay'/>

    <timer name='hpet' present='no'/>

  </clock>

 

so paste this xml in below over yours and pop the osk key in and report back.

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacOS</name>
  <uuid>ae2697b9-a43d-c0ed-764d-7ebcc9a29373</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Ubuntu" icon="arch.png" os="ubuntu"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='8'/>
    <vcpupin vcpu='1' cpuset='9'/>
    <vcpupin vcpu='2' cpuset='10'/>
    <vcpupin vcpu='3' cpuset='11'/>
    <vcpupin vcpu='4' cpuset='12'/>
    <vcpupin vcpu='5' cpuset='13'/>
    <vcpupin vcpu='6' cpuset='14'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/ae2697b9-a43d-c0ed-764d-7ebcc9a29373_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/VMs/macOS/macOS.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='nec-xhci'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' 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>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:51:66:48'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <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=REMOVED'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>
  </qemu:commandline>
</domain>

Link to comment

EDIT: I made one mistake right at the very end. I tried to use VNC instead of Splashtop! I just twigged, tried Splashtop and logged straight in with no problem whatsoever. A daft mistake to make! Info below is for reference only...

 

 

Thanks for that but no joy. The VM boots up to the login screen but then the VNC session won't accept keyboard or mouse input. It's not a crash as the cursor is flashing awaiting input.

 

I've had a look at the log. Maybe it's a VNC issue related to the keyboard?

 

usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
2017-02-10T17:15:09.676357Z qemu-system-x86_64: terminating on signal 15 from pid 6204
2017-02-10 17:15:10.276+0000: shutting down
2017-02-10 17:17:25.291+0000: starting up libvirt version: 1.3.1, qemu version: 2.5.1, hostname: Tower
Domain id=14 is tainted: high-privileges
Domain id=14 is tainted: custom-argv
Domain id=14 is tainted: host-cpu
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
usb-kbd: warning: key event queue full
2017-02-10T17:18:57.598042Z qemu-system-x86_64: terminating on signal 15 from pid 6204
2017-02-10 17:18:57.998+0000: shutting down
2017-02-10 17:19:28.498+0000: starting up libvirt version: 1.3.1, qemu version: 2.5.1, hostname: Tower
Domain id=15 is tainted: high-privileges
Domain id=15 is tainted: custom-argv
Domain id=15 is tainted: host-cpu

Link to comment
  • 2 weeks later...

Hoping someone can point me in the right direction.  I followed the new "easy" Sierra method, but first installing on a Mac in Fusion, then converting the disk, etc.  After that, tweaking the XML with the instructions and the osk from the original host, etc.  To that point, all went well. It would boot fine, and via splashtop I'd have mouse/keyboard working great.  From here, I'd now gone down the path of trying to get GPU passthrough, which has gone horribly.  I'm going to try to provide as much info as possible, so that hopefully my problem is obvious and someone can tell me which direction to go.

 

System: Dell T110 II

  -On-board video worked fine

  -Installed EVGA GT 610 2GB

 

I went down two paths, one just using the hostdev config in the XML, and two using the qemu commandline arguments in the XML.  Both end up with my unraid server becoming completely unresponsive to the point where I have to hard-power the server, and reboot.  In the BIOS of the server, my only options for the embedded video controller are "Standard" and "Distributed".  I've only been able to test Standard thus far.  With distributed set, I don't get output to the embeded controller VGA port, so not sure what it is actually doing.

 

Here is a fresh XML after clicking on "Edit", and then selecting the GT 610 for Video and Sound:

 

<domain type='kvm'>
  <name>OSX</name>
  <uuid>0e173767-6e0e-a28c-1454-f594f779768c</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="libreelec.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='0'/>
    <vcpupin vcpu='1' cpuset='1'/>
    <vcpupin vcpu='2' cpuset='2'/>
    <vcpupin vcpu='3' cpuset='3'/>
    <vcpupin vcpu='4' cpuset='4'/>
    <vcpupin vcpu='5' cpuset='5'/>
    <vcpupin vcpu='6' cpuset='6'/>
    <vcpupin vcpu='7' cpuset='7'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.7'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/0e173767-6e0e-a28c-1454-f594f779768c_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='4' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Sierra/Sierra.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </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='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' 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='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:51:66:48'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>

 

Here is the VNC config that worked for me, before I started down the GPU passthrough path:

 

   <interface type='bridge'>
         <mac address='52:54:00:51:66:48'/>
         <source bridge='br0'/>
         <model type='e1000-82545em'/>
         <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
       </interface>
       <input type='mouse' bus='ps2'/>
       <input type='keyboard' bus='ps2'/>
       <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
         <listen type='address' address='0.0.0.0'/>
       </graphics>
       <video>
         <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
         <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
       </video>
       <memballoon model='none'/>
     </devices>
     <seclabel type='none' model='none'/>
     <qemu:commandline>
       <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=REMOVED'/>
       <qemu:arg value='-smbios'/>
       <qemu:arg value='type=2'/>
       <qemu:arg value='-cpu'/>
       <qemu:arg value='Penryn,vendor=GenuineIntel'/>
     </qemu:commandline>
   </domain>

 

Here are the changes I attempted, which locked up my system by putting the GPU settings in the commandline args:

 

   <interface type='bridge'>
         <mac address='52:54:00:51:66:48'/>
         <source bridge='br0'/>
         <model type='e1000-82545em'/>
         <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
       </interface>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </memballoon>
     </devices>
     <seclabel type='none' model='none'/>
     <qemu:commandline>
	<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=pcie.0,multifunction=on,x-vga=on'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=02: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=REMOVED'/>
       <qemu:arg value='-smbios'/>
       <qemu:arg value='type=2'/>
       <qemu:arg value='-cpu'/>
       <qemu:arg value='Penryn,vendor=GenuineIntel'/>
     </qemu:commandline>
   </domain>

 

Here is the non-commandline settings I used which also resulted in a locked up system:

 

   <interface type='bridge'>
         <mac address='52:54:00:51:66:48'/>
         <source bridge='br0'/>
         <model type='e1000-82545em'/>
         <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
       </interface>
       <input type='mouse' bus='ps2'/>
       <input type='keyboard' bus='ps2'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </memballoon>
     </devices>
     <seclabel type='none' model='none'/>
     <qemu:commandline>
       <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=REMOVED'/>
       <qemu:arg value='-smbios'/>
       <qemu:arg value='type=2'/>
       <qemu:arg value='-cpu'/>
       <qemu:arg value='Penryn,vendor=GenuineIntel'/>
     </qemu:commandline>
   </domain>

 

Hoping for any pointers here.  Maybe given my BIOS limitations for the embedded video controller it won't work, but it would be good to know either way.

 

Thanks!

 

Link to comment

Xafloc i have just made a new osx advanced video that might help you

 

 

This video is about advanced OSX VM techniques in KVM with unRAID. You will see how to pass through physical devices to a KVM osx sierra VM such as GPU, sound and USB.

You will learn to what hardware that you can use and how to edit the XML template to add the hardware. You will learn how to use a Nvidia GPU in sierra by installing the Nvidia web drivers. You will see how to get your HDMI sound working using an HDMI audio kext. I will quickly run through using virt manager to avoid manual edits then discuss common osx VM problems.

Advanced OSX VM techniques in unRAID. Get everything working!

 

 

Edited by gridrunner
Link to comment
  • 4 weeks later...

I manage to install using the VMFusion method post in the video on my Hp micro server gen 8 1230v2 Xeon CPU in the cache drive, given 4GB ram, 4 CPUs. The performance is quite slow, still usable but just very slow. No graphic card install on the server.

 

Anyway I can improve the overall speed on it? the xml and any config I use is base on the video.

Edited by ispoon
Link to comment

Hi 1812,

 

I put it in SSD drive (Cosair Force 3 240GB) and set to only for the domain folder.

 

the XML is exactly the same as the video:

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Sierra-Kathy</name>
  <uuid>f0c90754-ed98-f614-c30b-a4db6ea9c1a7</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>4194304</memory>
  <currentMemory unit='KiB'>4194304</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>4</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='0'/>
    <vcpupin vcpu='1' cpuset='1'/>
    <vcpupin vcpu='2' cpuset='2'/>
    <vcpupin vcpu='3' cpuset='3'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.7'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/f0c90754-ed98-f614-c30b-a4db6ea9c1a7_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu>
    <topology sockets='1' cores='2' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/domains/macOS-Apptest/sierra.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </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='0x00' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:51:66:50'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </interface>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='none'/>
  </devices>
  <seclabel type='none' model='none'/>
  <qemu:commandline>
    <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=XXXX/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,vendor=GenuineIntel'/>
  </qemu:commandline>
</domain>

 

Edited by limetech
Do not display Apple Proprietary osk key please.
Link to comment

I have this Sierra VM all done and working perfectly for me!

 

Now I would like to expand on the 40GB partition and copy the whole setup to a physical hard drive (either a 250GB partition or the whole 500GB drive).

 

I cannot seem to get my 40GB Mac partition expanded. I expanded the original 40GB sierra.img image to 200G using terminal instructions I found but when I boot the VM the main parition os still 40GB and I cannot get the 40GB partiton to change. Using Disk Utility, I cannot make any of the partition changes work.

 

I successfully used terminal to copy the 40GB IMG to the hard drive and boot from it but I still cannot expand the hard drive partition larger than the 40GB.

Is there any insight you can give me to accomplish either task!?

 

Not super familiar with MacOSX or Unraid but I am learning - thanks to your wonderful video tutorials!

Link to comment

Guys we're on thin ice here with this topic.  You are only permitted to create a OS X/MacOS VM in unRAID running on Apple hardware only!  To do otherwise breaks the terms of their EULA and the last thing we need is a haunting by the ghost of steve jobs.  Please don't include the "osk" key or anything about using non-Apple h/w.

 

Cheers,

Tom

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.