Ubuntu Linux内核更新后VirtualBox无法启动的解决办法


几天由于更新玩乐网站不开自己的Linux电脑,今天开了,看了一下这期间Ubuntu的更新,一堆!想都没想就开始更新了。更新倒是一切顺利。后来开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.
VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).

Result Code: 0x80004005
Component: Console
Interface: IConsole
{1dea5c4b-0753-4193-b909-22330f64ec45}

提示说在终端里输入

sudo /etc/init.d/vboxdrv setup

仍然不行。给的信息是

Stopping VirtualBox kernel module: vboxdrv.
Recompiling VirtualBox kernel module: vboxdrv
* Look at /var/log/vbox-install.log to find out what went wrong

打开/var/log/vbox-install.log文件,上书:

cp:missing destination file operand after "/tmp/vbox.0/Module.symvers"
请尝试执行"cp --help"来获取更多信息。
Makefile:73: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR= and run Make again.。 停止。

貌似是更新的时候升级了Linux kernel,所以vboxdrv需要重新编译。因为是从源里面直接更新的,没有Linux kernel的源文件,显然编译需要这些源文件。逛了几个论坛,说解决方法如下:

sudo apt-get install linux-headers-$(uname -r)
sudo apt-get install linux-restricted-modules-$(uname -r)
sudo /etc/init.d/vboxdrv setup

果然,终端提示编译通过了

* Stopping VirtualBox kernel module vboxdrv [ OK ]
* Recompiling VirtualBox kernel module vboxdrv [ OK ]
* Starting VirtualBox kernel module vboxdrv [ OK ]

启动VirtualBox,一切正常了。

相关内容