我们都知道VirtualBox是一款虚拟机,能够在Ubuntu系统中运行,但在Ubuntu 13.10运行的时候提示错误,导致VirtualBox无法启动,遇到这个问题怎么办?下面小编就给大家介绍下Ubuntu13.10不能启动VirtualBox的解决方法。

Ubuntu 13.10不能启动VirtualBox怎么办?

  最近需要在若干虚拟机进行Hadoop的调试,于是就在Ubuntu上安装VirtualBox虚拟机,可是碰到了虚拟机无法启动的问题:

  界面上会弹出一个错误对话框,错误信息如下:

  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. Re-setup the kernel module by executing

  ‘/etc/init.d/vboxdrv setup’

  as root. Users of Ubuntu, Fedora or Mandriva should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.

  首先汇总一下系统环境:ubuntu desktop 13.10, virtualbox-4.3, kernel: 3.11.0-17

  1. 按照这个错误指示,我就切换到命令行,

  sudo /etc/init.d/vboxdrv setup

  得到如下的错误信息:

  提示依然无法正常加载dkms,而且好像需要当前内核的源代码进行编译,同时,提示查看/var/log/vbox-inuntustall.log日志。

  2. 于是,cat /var/log/vbox-install日志

  Uninstalling modules from DKMS

  removing old DKMS module vboxhost version 4.3.8

  ------------------------------

  Deleting module version: 4.3.8

  completely from the DKMS tree.

  ------------------------------

  Done.

  Attempting to install using DKMS

  Creating symlink /var/lib/dkms/vboxhost/4.3.8/source -》

  /usr/

  DKMS: add completed.

  Failed to install using DKMS, attempting to install without

  Makefile:183: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=《directory》 and run Make again. Stop.

  3. 检查dkms,正常安装;反复安装virtualbox,确保不是安装不完整造成的问题。

  sudo apt-get install dkms

  提示已经安装到最新版本,说明应该不是dkms的问题。

  4. 查看内核版本 uname -r, 得到当前的kernel版本: 3.11.0-17-generic.

  5. 搜索了一下网络,有人提示说,可能需要重新安装一下内核。

  sudo apt-get install linux-headers-$(uname -r)

  注意: ${uname -r}用来代表当前内核的版本,不能直接在命令中使用的,这里我的版本是step 4中的输出。

  6. 按照之前的问题提示,重新运行 sudo /etc/init.d/vboxdrv setup

  ~$ 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模块注册到kernel中了

  7. 接下来就可以点击virtualbox的启动按钮,正常启动virtualbox中的虚拟机了。

  8. 原因分析:

  最后我尝试分析了一下,产生这个错误的原因:之前的virtualbox是可以正常工作的,后来升级ubuntu和内核版本之后,估计打破了virtualbox和内核之前的注册系统,就是原有的注册在新的内核中失效了,同时,现在的内核可能在升级过程,有若干的不稳定情况。 所以,需要重新覆盖安装内核,然后,再一次将virtualbox内核注册到当前linux内核之中,以上仅为猜测,欢迎大家提出新的想法和推测。

  上面就是Ubuntu 13.10不能启动VirtualBox的解决方法的介绍了,该问题主要出现在Ubuntu 13.10版本中,且是在升级内核版本所导致。