I am trying to get virtualbox working on my machine with the pci-passthrough extension. When trying to run a VM, I got this error message:
Kernel driver not installed (rc=-1908)
[message asking me to install the vboxdrv kernel driver
by executing /sbin/vboxconfig as root]
So I did so and got this:
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root.
Looking at dmesg, the installation added no new entries.
Looking at the log file, it failed at the last module:
Building the main VirtualBox module.
Building the net filter module.
Building the net adaptor module.
Building the PCI pass-through module.
meaning that this is the code that fails in /usr/lib/virtualbox/vboxdrv.sh, called from /sbin/vboxconfig:
log "Building the PCI pass-through module."
if ! myerr=`$BUILDINTMP \
--use-module-symvers /tmp/vboxdrv-Module.symvers \
--module-source "$MODULE_SRC/vboxpci" \
--no-print-directory install 2>&1`; then
log "Error building the module:"
module_build_log "$myerr"
failure "Look at $LOG to find out what went wrong"
fi
where $BUILDINTMP points to the runnable file /usr/share/virtualbox/src/vboxhost/build_in_tmp
This is how far I got in troubleshooting, I don't know what to do next.
Some info:
- IOMMU / VT-D is enabled
- kernel version is
4.10.0-38-generic - OS is Linux Mint 18.3
- as far as I can tell, the kernel headers are installed, "as far as I can tell" meaning that the path
/lib/modules/4.10.0-38-generic/build/include/linuxexists and is full of .h files and other subdirectories - Virtualbox is version 5.2.20
- when I installed the PCI passthrough extension to VBox, it indicated a successful installation
vboxdrv.sh: failed: modprobe vboxdrv failed.So what happens if you trysudo modprobe vboxdrvmanually?modprobe: ERROR: could not insert 'vboxdrv': Required key not availableIt probably needs me to first built the module before trying to load it via modprobe. Maybe the sh file fails there because it can't even build it?