由于缺少内核模块,无法安装VirtualBox

我正在尝试在我的Ubuntu上安装VirtualBox。

我首先尝试在终端中sudo apt-get install virtualbox-ose ,但在配置步骤之后,它失败并显示错误 :

找不到合适的运行内核模块在继续启动virtualbox ,我收到此错误:警告:字符设备/ dev / vboxdrv不存在。 请安装virtualbox-ose-dkms包和相应的头文件,很可能是linux-headers-generic。

在修复此问题之前,您将无法启动VM。

所以我尝试了http://www.virtualbox.org/的软件包,但启动VirtualBox失败了:

警告:未加载vboxdrv内核模块。 要么当前内核没有可用的模块(2.6.38-8-generic-pae),要么加载失败。 请重新编译内核模块并安装它

  sudo /etc/init.d/vboxdrv setup 

在修复此问题之前,您将无法启动VM。

所以我运行了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 Error! Your kernel headers for kernel 2.6.38-8-generic-pae cannot be found at /lib/modules/2.6.38-8-generic-pae/build or /lib/modules/2.6.38-8-generic-pae/source. * 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的内容 。

当我被卡住时,我也试图用yum安装kernel-devel ,仍然没有结果:

 root@ubuntu# yum install kernel-devel Setting up Install Process No package kernel-devel available. Nothing to do 

现在我不知道如何纠正这个问题。 有任何想法吗?

使用suyum包管理器以root身份执行所有操作适合基于Redhat的发行版,但不适合Ubuntu。 在Ubuntu中,您通过使用sudo命令前缀来以root身份运行命令。 Ubuntu使用的包管理器很简单。

要安装VirtualBox,请运行:

 sudo apt-get install virtualbox-ose 

这将处理包linux-headers-generic包含的内核头之类的依赖关系。 如果您有PAE内核,则需要先安装标头(在您的情况下为linux-headers-2.6.38-8-generic-pae ),这可以通过以下方式完成:

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

uname -r给出了加载的内核版本,并使您无需手动输入内核版本。

我遇到了同样的问题。 我安装了linux-headers--generic-pae但具有讽刺意味的是缺少linux-headers-generic-pae 。 如果你安装那些应该有帮助的人。

祝好运!

安装build-essentials

 apt-get install build-essentials 

并安装linux-kernel-headers

 apt-get install linux-kernel-headers 

要么

 apt-get install linux-kernel-* 

安装dkms

 apt-get install dkms