最近升级了ubuntu14.04,还是按之前的方法安装了virtualbox(guest系统仍然使用升级之前的镜像文件),但是在启动guest系统时,总是报错,提示如下:
Kernel driver not installed (rc=-1908)
The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing
'/etc/init.d/vboxdrv setup'
as root. If it is available in your distribution, you should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.
按照提示,应该是vboxdrv未加载,需要重新安装vboxdrv。于是我执行了如下的两条命令:
sudo apt-get install dkms
sudo /etc/init.d/vboxdrv setup
但是仍然报错,终端输出如下:
Stopping VirtualBox kernel modules ...done.
Uninstalling old VirtualBox DKMS kernel modules ...done.
Trying to register the VirtualBox kernel modules using DKMS ...done.
Starting VirtualBox kernel modules ...failed!
(modprobe vboxdrv failed. Please use 'dmesg' to find out why)
然后我到dmesg的输出当中查看,也没有发现明显错误的地方。 之后就一直卡到这个地方,google了比较长时间,大部分的答案也是按照上面的这个操作(还有就是重新卸载/安装dkms和virtualbox以及virtualbox-dkms)。
后来经过一个网友的提醒,可能是gcc版本过低导致的。因为我本地需要编译android,所以我手动将gcc的版本降到了4.4,而非原来的4.8.于是我将gcc版本重新改回到4.8,然后继续执行
sudo /etc/init.d/vboxdrv setup
这次终于好了,提示如下:
Stopping VirtualBox kernel modules ...done.
Uninstalling old VirtualBox DKMS kernel modules ...done.
Trying to register the VirtualBox kernel modules using DKMS ...done.
Starting VirtualBox kernel modules ...Done!
然后再运行virtualbox,一切都正常了!