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

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

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

我首先尝试sudo apt-get install virtualbox-ose在终端中进行操作,但在配置步骤之后,它失败了一个错误

未找到适合运行内核的模块 启动时virtualbox出现此错误:警告:字符设备 /dev/vboxdrv 不存在。请安装 virtualbox-ose-dkms 包和适当的标头,最有可能是 linux-headers-generic。

在解决此问题之前,您将无法启动虚拟机。

所以我尝试了http://www.virtualbox.org/,但启动 VirtualBox 失败,并显示:

警告:vboxdrv 内核模块未加载。当前内核(2.6.38-8-generic-pae)没有可用模块,或者加载失败。请重新编译内核模块并通过以下方式安装

  sudo /etc/init.d/vboxdrv setup

在解决此问题之前,您将无法启动虚拟机。

所以我跑了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

由于我陷入困境,我还尝试使用 安装kernel-develyum但仍然无果:

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

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

答案1

su使用包管理器以 root 身份执行所有操作yum适用于基于 Redhat 的发行版,但不适用于 Ubuntu。在 Ubuntu 中,您可以通过在命令前加上 来以 root 身份运行命令sudo。Ubuntu 使用的包管理器是 apt。

要安装 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给出加载的内核版本,并节省您手动输入内核版本的麻烦。

答案2

我遇到了同样的问题。我安装了,linux-headers-<version>-generic-pae但讽刺的是缺少了linux-headers-generic-pae。如果你安装这些,也许会有所帮助。

祝你好运!

答案3

安装构建必需品

apt-get install build-essentials 

并安装Linux 内核头文件

apt-get install linux-kernel-headers 

或者

apt-get install linux-kernel-*

安装陣容

apt-get install dkms

相关内容