Unfu*king my UNRAID GUI
I have a problem...
And it really really wasn't a problem, but it was annoying enough to spend 3 hrs with Gemini trying to make it work. Lets begin.
I have a server that I use to do a whole bunch of stuff and it uses UNRAID. The whole thing sits in a rack in my workshop and I have a Pi-KVM to work with it remotely. I can do everything I need to via a the webgui, but solidly messing up the networking several times has taught me the value of having reliable access to the local GUI.
This was all going swimmingly until I started throwing GPUs in it. The local GUI would happily render over the onboard IMPI ASPEED GPU, and all was good an right in the world. I then had a stupid idea of starting to self-host some LLMs, so I bought a weird ass (and very cheap) nVIDIA V100 SMX2 GPU strapped to an aliexpress SMX-2 to PCI-E card. It wont be the first time we talk about this cursed device so you may as well clap eyes on it now...

Like most data centre GPUs, it doesn't have any VGA outputs and this plays merry hell with UNRAIDs boot process. I went from having an on screen boot log and local GUI from the onboard VGA to a blank screen during boot and no local GUI.
After much back on forth with Gemini, this is where I got to.
- Even if you set the BIOS to "onboard graphics" as the priority, that gets you about as far as the UNRAID boot menu before UNRAID starts doing its own thing and trying to load its local console output over whichever GPU it finds first (in this case the headless V100)
- You can spend a fair amount of time messing about with custom boot arguements in UNRAID but nothing is going to get you where you need to be.
- The solution is two fold.
- In the BIOS you need to set the OPROM for the slot the GPU is in to disabled, this prevents UNRAID from trying to output basic video to it before drivers are loaded.
- In the config file for the UNRAID "nVIDIA Drivers" plugin (/boot/config/plugins/nvidia-driver/settings.cfg) you'll need to set disable_xconfig=true so that UNRAID doesn't to load its local UI on the V100.


The result; the ASPEED GPU displays the entire boot sequence and loads the local UI when its done.
But wait there's more. The V100 GPU, being a bit weird and all, was also causing the boot sequence to hang during PCIE device enumeration whenever a soft reset was performed. Turns out disable the OP ROM also fixed that, so maybe the 3 hrs was worth it in the end?

Comments ()