I installed Virtualbox from the official openSUSE repositories but the latter failed to start any virtual machine. I recall the post-install script failing to add the root account to the vboxusers group. So the next step was to add my current user to the vboxusers group. Done in a jiffy, yet, Virtualbox would fail to start suggesting to execute /sbin/rcvboxdrv setup. In openSUSE that path should actually be /usr/sbin/rcvboxdrv; which turns out to be a symbolic link to /etc/init.d/vboxdrv.

Running sudo /etc/init.d/vboxdrv setup prints the following:

Recompiling VirtualBox kernel module, NOT. It has been packaged.

The vboxdrv script calls the setup() function when the setup argument is passed and the function is as follows:

    begin_msg "Recompiling VirtualBox kernel module, NOT. It has been packaged."

The vboxdrv script gives an idea though as to what is required. We’re actually getting vboxdrv module loaded in the Linux kernel. A quick shot at lsmod | grep vboxdrv returned null. Ah! Let’s just do:

sudo modprobe vboxdrv

It works! Once the vboxdrv module is loaded in the kernel, virtual machines can be started.

At next boot of your host machine you might notice vboxdrv loading automatically. Why? Actually during setup the vboxdrv.service is created and enabled. To see the status of the service, we do:

sudo service vboxdrv status