[Support] SpaceinvaderOne - Macinabox


1963 posts in this topic Last Reply

Recommended Posts

I took a look at macinabox code hosted on github.

Macinabox calls fetch.sh:
 

#!/bin/bash
# fetch method selects which method to get osx with
set +x;
SCRIPTDIR="$(dirname "$0")";
cd "$SCRIPTDIR" || exit

# Method 1
# Big Sur uses script 2 for method 1
if [ "$method" = "method 1" ] && [ "$flavour" == "Big Sur" ] ; then		
# python3 fetch-macos2.py
python3 fetch-macos.py # temporary use other big sur download method for now
# others uses script 1 for method 1
elif [ "$method" = "method 1" ] ; then
python3 fetch-macos.py "$@"
fi

# Method 2
# Big Sur uses script 1 for method 2
if [ "$method" = "method 2" ] && [ "$flavour" == "Big Sur" ] ; then	
python3 fetch-macos.py "$@"	
# others uses script 2 for method 2
elif [ "$method" = "method 2" ] ; then
python3 fetch-macos2.py
fi

exit;

 

What I understand is that even if you choose method 2 for big sur the script will use fetch-macos.py (1st method).

User chooses method 1  and big sur --> fetch-macos.py (1st method)

User chooses method 2  and big sur --> fetch-macos.py (1st method)

 

Method 2 will work only if the os is different from big sur.

Link to post
  • Replies 2k
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

PLEASE - PLEASE - PLEASE EVERYONE POSTING IN THIS THREAD IF YOU POST YOUR XML FOR THE VM HERE PLEASE REMOVE/OBSCURE THE OSK KEY AT THE BOTTOM. IT IS AGAINST THE RULES OF THE FORUM FOR OSK K

09 Dec 2020   Basic usage instructions.   Macinabox needs the following other apps to be installed. CA User Scripts (macinabox will inject a user script. This is what fixes th

Sure is. When Big Sur is released officially a new Macinabox will be out. With a bunch of new features and choice between opencore and clover bootloaders.

Posted Images

Hi there,

 

I had used MacInABox a few weeks ago and created a Catalina machine (checked BigSur but it got Catalina, I didn't care) with 2 cpu cores and 4GB of memory to do some data reconstruction of an old hfs+ harddrive.

During this, somehow the user share was somehow residing on cache and the cache drive got filled up, so the machine halted and I needed to stop everything and clean up the shares and correct the ones who should actually use the cache and which shouldn't.

After that, because the data reconstruction was slow in the first place, I thought, well, since the VM with Catalina works, so far, I'll just give it another two CPU cores and some more memory, so I changed that and executed the user script again.

Upon starting the machine now and connecting to it, it was kind of stuck in the boot media selection menu, but when I tried to select the vdisk where Catalina was on, some graphic glitches happened, and I couldn't boot into anything.

So, to battle that, I took out the macosx installer disk from the VM, since it wasn't needed anymore, and run the helper script, again.

Now, when I start the machine, I see only that one boot drive vdisk Catalina is installed on. When I hit enter, it shows the Apple on black screen like expected, but never goes beyond that.

Here's the XML code copied from UNRAID web interface:

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='27'>
  <name>Macinabox BigSur</name>
  <uuid>76af2ce9-41c3-46f4-9057-2d3ac0e85e9f</uuid>
  <description>MacOS Big Sur</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="default.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>17301504</memory>
  <currentMemory unit='KiB'>17301504</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>4</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='2'/>
    <vcpupin vcpu='1' cpuset='18'/>
    <vcpupin vcpu='2' cpuset='3'/>
    <vcpupin vcpu='3' cpuset='19'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/76af2ce9-41c3-46f4-9057-2d3ac0e85e9f_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='2' threads='2'/>
    <cache mode='passthrough'/>
  </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/isos/BigSur-opencore.img' index='2'/>
      <backingStore/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-2'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='58:54:23:c2:cf:78'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-27-Macinabox BigSur/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <graphics type='vnc' port='5900' autoport='yes' websocket='5700' 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'/>
      <alias name='video0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
</domain>

 

How can I troubleshoot this?

I tried to go back to the original CPU and RAM configuration, but it just always stuck on the bootup there.

 

Any help appreciated.

 

Thanks,

 

MH

Edited by MatzeHali
Link to post
38 minutes ago, MatzeHali said:

Any help appreciated

 

I would try the following things:
 

1- change ram from 17301504 to 16777216

2- add the custom code to the end of your xml!!! 

https://github.com/SpaceinvaderOne/Macinabox/blob/master/xml/Macinabox BigSur.xml#L134-L144

 

This is probably your issue.

 

3- change this:
 

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

 

To this:

  <cpu mode='host-passthrough' check='none'/>

 

Edited by ghost82
Link to post
45 minutes ago, MatzeHali said:

somehow the user share was somehow residing on cache and the cache drive got filled up

 

I strongly suggest to add trim function to your vm, so that the virtual disk synchronizes with the real hard drive, otherwise you can have your real drive filled:

 

change this:

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>

 

to this:

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none' io='native' discard='unmap'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>

 

and add this in your qemu:arg at the bottom of the xml:
 

    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-3.rotation_rate=1'/>

 

Link to post
10 hours ago, rjmorgan said:

 

 

I am also having the same problem.  Trying to install Big Sur and Catalina is what is installing.

 

I still followed SI1's instructions for bigsur (labeled the disk and same settings in the docker) and after I finished with Catalina I upgraded to Big Sur.  No issues (but it is another step of course).

Link to post
1 hour ago, MatzeHali said:

Hi there,

 

I had used MacInABox a few weeks ago and created a Catalina machine (checked BigSur but it got Catalina, I didn't care) with 2 cpu cores and 4GB of memory to do some data reconstruction of an old hfs+ harddrive.

During this, somehow the user share was somehow residing on cache and the cache drive got filled up, so the machine halted and I needed to stop everything and clean up the shares and correct the ones who should actually use the cache and which shouldn't.

After that, because the data reconstruction was slow in the first place, I thought, well, since the VM with Catalina works, so far, I'll just give it another two CPU cores and some more memory, so I changed that and executed the user script again.

Upon starting the machine now and connecting to it, it was kind of stuck in the boot media selection menu, but when I tried to select the vdisk where Catalina was on, some graphic glitches happened, and I couldn't boot into anything.

So, to battle that, I took out the macosx installer disk from the VM, since it wasn't needed anymore, and run the helper script, again.

Now, when I start the machine, I see only that one boot drive vdisk Catalina is installed on. When I hit enter, it shows the Apple on black screen like expected, but never goes beyond that.

Here's the XML code copied from UNRAID web interface:

 


<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='27'>
  <name>Macinabox BigSur</name>
  <uuid>76af2ce9-41c3-46f4-9057-2d3ac0e85e9f</uuid>
  <description>MacOS Big Sur</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="default.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>17301504</memory>
  <currentMemory unit='KiB'>17301504</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>4</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='2'/>
    <vcpupin vcpu='1' cpuset='18'/>
    <vcpupin vcpu='2' cpuset='3'/>
    <vcpupin vcpu='3' cpuset='19'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/76af2ce9-41c3-46f4-9057-2d3ac0e85e9f_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='2' threads='2'/>
    <cache mode='passthrough'/>
  </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/isos/BigSur-opencore.img' index='2'/>
      <backingStore/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-2'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='58:54:23:c2:cf:78'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-27-Macinabox BigSur/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <graphics type='vnc' port='5900' autoport='yes' websocket='5700' 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'/>
      <alias name='video0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
</domain>

 

How can I troubleshoot this?

I tried to go back to the original CPU and RAM configuration, but it just always stuck on the bootup there.

 

Any help appreciated.

 

Thanks,

 

MH

It looks like your interface is showing virtio instead of e1000-82545em.  If you change CPU and RAM, you'll have to re-run the helper script again.  Run it (maybe more than once if it doesn't return a message saying vm fixed) and then start it up.

 

Link to post

Hi everyone,

 

i installed the Tools like in the video presented. my problem is the vmready notify script is running, running,..... i see at the isos the images from big sur and obencore. at domains i also see the big sur img. but no VM in the VM Tabs. i let it running 24h.

Link to post
On 2/2/2021 at 10:02 AM, cloudgeek said:

Would there be any value to pasting the XML of the VM here for you much more experienced folks to review? Maybe something is wrong that you will spot straight away...

So, I have resolved that my failed connection to the recovery server is not a network issue...so I am stuck. I guess I will wait for an update or sign up for Patreon to get some additional help from the masters. I have tried everything suggested, so thank you to everyone who offered suggestions. If anyone has additonal ideas for me to try or need additional logs, let me know as I am clearly willing to try whatever to get this working. Have a blessed day everyone!

Link to post
34 minutes ago, Paincookie said:

i installed the Tools like in the video presented. my problem is the vmready notify script is running, running,..... i see at the isos the images from big sur and obencore. at domains i also see the big sur img. but no VM in the VM Tabs. i let it running 24h.

 

Even when all the necessary components have been downloaded the VM doesn't appear until after you have run the helper script for the first time. The vmready_notify script isn't necessary. All it does is tell you that the downloads are complete and it's time to run the helper script with default settings.

 

Link to post
7 hours ago, ghost82 said:

 

I strongly suggest to add trim function to your vm, so that the virtual disk synchronizes with the real hard drive, otherwise you can have your real drive filled:

 

change this:


    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>

 

to this:


    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none' io='native' discard='unmap'/>
      <source file='/mnt/user/domains/Macinabox BigSur/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>

 

and add this in your qemu:arg at the bottom of the xml:
 


    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-3.rotation_rate=1'/>

 

I did that, but it didn't help with the startup of the VM. It still is stuck at the Apple logo.

Link to post
6 hours ago, avinyc said:

It looks like your interface is showing virtio instead of e1000-82545em.  If you change CPU and RAM, you'll have to re-run the helper script again.  Run it (maybe more than once if it doesn't return a message saying vm fixed) and then start it up.

 

 

Yes, I did run the helper script every time I changed something.

When I run it, I always get the following output:

Script location: /tmp/user.scripts/tmpScripts/1_macinabox_helper/script
Note that closing this window will abort the execution of this script
Starting to Fix XML
error: failed to get domain 'put the name of the vm here'
No network adapters in xml to change. Network adapter is already vmxnet3











Added custom qemu:args for macOS
topolgy line left as is
custom ovmf added
error: Failed to define domain from /tmp/put the name of the vm herefixed.xml
error: (domain_definition):3: Extra content at the end of the document

^

This is what has been done to the xml

Your network type was already correct. Network has not been changed.
The custom qemu:args have been added to you xml.
VM is set to use custom ovmf files.
xml is now fixed. Now goto your vm tab and run the VM
Rerun this script if you make any other changes to the macOS VM using the Unraid VM manger

 

Any ideas on how to get passed the Apple logo?

Thanks.

Link to post
1 hour ago, MatzeHali said:

'put the name of the vm here'

 

You didn't follow the instructions to edit the script before running it for the second time.

 

Timecode 14:00 in the video guide. (See the previous page of this thread)

 

 

Edited by John_M
Added timecode
  • Like 1
  • Thanks 1
Link to post

I found that updating from Penryn to passthrough of the host game me a 20% approx speed boost. My CPU params become:-

 

<qemu:arg value='-cpu'/>

<qemu:arg value='host,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2'/>

 

Geekbench with Penryn: Single 835, Multi 3477

Geekbench with Host: Single 1021, Multi 3736

(4 cores passed to VM)

 

Edited by planetwilson
Link to post

 

 

22 hours ago, John_M said:

 

Even when all the necessary components have been downloaded the VM doesn't appear until after you have run the helper script for the first time. The vmready_notify script isn't necessary. All it does is tell you that the downloads are complete and it's time to run the helper script with default settings.

 

 

But nothing happend. on the Domains Share i see the Macinabox BigSur Folder with the macos_disk.img inside, but not in the VMS Tab

Link to post

Hi everyone, 

I'm not that experienced with Unraid. Installed it a couple of days ago for the first time and at the moment I just play around with it. So please forgive me, if I explain things a little bit complicated and maybe not use the right terms. At the moment, I just try to get my head around all that new and exciting possibilities with Unraid.

 

I installed Catalina on my Unraid Server, following the excellent tutorial from @SpaceInvaderOne. Everything went smooth and it runs fine.

 

No I would like to passtrough my second network interface which is a QNAP QXG-10G1T 10 GbE NIC. Can someone guide me in the right direction?

 

Thanks!

Link to post
23 hours ago, PGC77 said:

I would like to passtrough my second network interface which is a QNAP QXG-10G1T 10 GbE NIC. Can someone guide me in the right direction?

 

The first thing to consider is whether the NIC is supported by macOS, either natively or by means of a driver supplied by the manufacturer.

 

Link to post

So setup macinabox took me like 2 hours to figure out when selecting catilina to download in macinabox would really download big sur..

 

When I selected big sur it  would download Catilina and install it..  Not sure what is going on here maybe someone could tell me what i am doing wrong or is the docker messed up?

Link to post
9 hours ago, CSIG1001 said:

selecting catilina to download in macinabox would really download big sur..

 

It doesn't. If you select Catalina, it downloads Catalina - I did it last week, and discussed it in this thread. However, if you select Big Sur, it downloads Catalina instead. This is a known problem and has been discussed repeatedly in this thread. The author hasn't updated the container to fix it. Also discussed is the fact that it's possible to install Catalina and then upgrade to Big Sur, if you really want to. I wouldn't expect you to read all 71 pages but it might be worth skimming through the last four or five.

Link to post
23 hours ago, John_M said:

 

The first thing to consider is whether the NIC is supported by macOS, either natively or by means of a driver supplied by the manufacturer.

 

Yes, the NIC is natively supported in macOS. I have them running in my MacPro 5.1 and in a Hackintosh. No driver needed as it is the same chip as in the iMac Pro models (Aquantia).

Link to post

I am in the process of migrating my bare metal macOS Big Sur to a VM in Unraid. The VM is in place and the user data has been moved to a Vdisk. Everything is working fine - the only thing remaining is to get the Radeon 580 graphics to work.

 

Selecting the card under graphics in the template, the OS after running the user script never boots. Switching back to VNC causes a "display not initialized" message. I have to blow away the VM every time this happens, and relink to my Vdisk. Booting back in using VNC, I have installed No Machine as well as auto-login. My thought being that once the GPU is recognized, I could remote in through No Machine. However every time I select the GPU in the template I cannot get it to boot. I double checked the OC setup and Lilu and whatevergreen are enabled. I thought about seeing if there's something in the BIOS I can fiddle with, but the VM boots too fast for me to enter the BIOS

 

Any suggestions on how to get this working? Here's my XML

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='32' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Macinabox Catalina</name>
  <uuid>1b2d26f8-9d92-45e8-a084-bc5361be561e</uuid>
  <description>MacOS Catalina</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="Catalina.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>16777216</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='12'/>
    <vcpupin vcpu='2' cpuset='5'/>
    <vcpupin vcpu='3' cpuset='13'/>
    <vcpupin vcpu='4' cpuset='6'/>
    <vcpupin vcpu='5' cpuset='14'/>
    <vcpupin vcpu='6' cpuset='7'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/system/custom_ovmf/Macinabox_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/1b2d26f8-9d92-45e8-a084-bc5361be561e_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='4' threads='2'/>
    <cache mode='passthrough'/>
  </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/Josh Big Sur User/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-2'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:db:03:40'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='e1000-82545em'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-32-Macinabox Catalina/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <graphics type='vnc' port='5900' autoport='yes' websocket='5700' 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'/>
      <alias name='video0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
  <qemu:commandline>
    <qemu:arg value='-usb'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd,bus=usb-bus.0'/>
    <qemu:arg value='-device'/>

Thanks!

Edited by joshallen2k
Added additional info
Link to post

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='swscan.apple.com', port=443): Max retries exceeded with url: /content/catalogs/others/index-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x1522afc44670>: Failed to establish a new connection: [Errno 110] Operation timed out'))
chmod: /isos/Mojave-install.img: No such file or directory
rm: can't remove '/Macinabox/tools/FetchMacOS/BaseSystem/*': No such file or directory

Link to post
18 hours ago, PGC77 said:

Yes, the NIC is natively supported in macOS.

 

Good. In that case, it's a three step process.

  1. Make sure the card isn't being used by Unraid. Typically people would want to use a 10Gb card to serve files to other hosts but you need to exclude it and use another interface as eth0 instead. (Settings -> Network settings. Make sure it isn't eth0 and exclude it from all bonds and bridges.)
  2. Make sure it isn't being bound to a built-in Linux driver by binding it to the virtio stub driver instead. (Tools -> System Devices. Make sure it is in an IOMMU group all by itself and tick the box to the left, then click the "Bind selected to VFIO at boot" button.)
  3. Edit your VM template to pass though the PCIe device.

 

Edited by John_M
Typo
Link to post

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.