I found a weird ‘gotcha’ with UNRAID recently, where if you pass through a PCI-E device into a virtual machine you may lose interactivity with the host if it’s currently relying on that resource when said VM is staretd.
Furthermore, if you’re using auto-start, you’re extra screwed! As soon as you start the array, the VM is kick-started and you lose the device. You cannot modify the VM configuration without the array being mounted, so you’re stuck in this seemingly inescapable loop. Fortunately there is a pretty lightweight solution if you’re even remotely familiar with Linux.
- Access Settings > VM Manager from the UNRAID web interface prior to any array being started.
- Set Enable VMs = No and apply.
- Start the array, so that the disks are mounted.
- VMs will still not be available.
- At the physical UNRAID host, log into the console or SSH in.
- Rename the boot disk of the VM so start fails.
- mv /mnt/user/yourVMBootDiskArray/vm-name/vdisk1.img /mnt/user/yourVMBootDiskArray/vm-name/vdisk1.img.backup
- Set Enable VMs = Yes and apply.
- The VM attempted to start, and has failed immediately before passthrough was able to occur. Now edit your configuration to exclude the offending device from passthrough.