首页 > 代码库 > Ubuntu 升级VisualBox后无法启动 Kernel driver not installed (rc=-1908)

Ubuntu 升级VisualBox后无法启动 Kernel driver not installed (rc=-1908)

?

?

VisualBox之所以在Linux上比传统的VMware快得多,关键一点就是它和Linux内核的结合比较紧密,这也是开源的优点。

不过Linux内核更新很频繁,每次更新内核后启动VirtualBox都会提示:

VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Re-setup the kernel module by executing ‘/etc/init.d/vboxdrv setup’ as root.

所以需要重新编译VirtualBox的内核,Ubuntu下执行如下命令:

sudo /etc/init.d/vboxdrv setup

如果提示

?

* Stopping VirtualBox kernel modules ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ OK ]
* Uninstalling old VirtualBox DKMS kernel modules ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [ OK ]
* Trying to register the VirtualBox kernel modules using DKMS
* Failed, trying without DKMS
* Recompiling VirtualBox kernel modules
* Look at /var/log/vbox-install.log to find out what went wrong

?

找到/var/log/vbox-install.log文件,内容大致为:

Makefile:172: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. ?Stop.

所以需要安装当前Linux内核的源文件,编译VirtualBox内核的时候需要它,Ubuntu下执行如下命令安装当前Linux内核的源文件:

sudo apt-get install linux-headers-`uname -r`

注意括起uname -r的不是单引号,而是Esc键下面的那个符号。


然后再编译VirtualBox内核执行如下命令:

sudo /etc/init.d/vboxdrv setup

Ubuntu 升级VisualBox后无法启动 Kernel driver not installed (rc=-1908)