在 VirtualBox 14.10 更新后,我无法再运行我的机器。值得注意的是,运行sudo service virtualbox status
返回VirtualBox kernel module is not loaded
并运行sudo service virtualbox restart
显示:
* Stopping VirtualBox kernel modules [ OK ]
* Starting VirtualBox kernel modules
* No suitable module for running kernel found
[fail]
当我尝试运行一个框时,VirtualBox GUI 会弹出一个对话框,提示我运行sudo /etc/init.d/vboxdrv setup
/etc/init.d/vboxdrv
,但是我的 14.10 安装上没有。
这让人想起这个问题。根据一些答案,我尝试卸载(使用purge
)并重新安装 VirtualBox。这没有帮助。但是,我无法安装:
linux-headers-`uname -r`
因为没有名为 的包linux-headers-3.13.0-30-generic
。我确实安装了linux-headers-generic
和linux-source
,以及dkms
,但重新安装仍然失败:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
vde2
The following NEW packages will be installed:
virtualbox virtualbox-dkms virtualbox-qt
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/21.1 MB of archives.
After this operation, 87.6 MB of additional disk space will be used.
Selecting previously unselected package virtualbox.
(Reading database ... 253183 files and directories currently installed.)
Preparing to unpack .../virtualbox_4.3.18-dfsg-2ubuntu1_amd64.deb ...
Unpacking virtualbox (4.3.18-dfsg-2ubuntu1) ...
Selecting previously unselected package virtualbox-dkms.
Preparing to unpack .../virtualbox-dkms_4.3.18-dfsg-2ubuntu1_all.deb ...
Unpacking virtualbox-dkms (4.3.18-dfsg-2ubuntu1) ...
Selecting previously unselected package virtualbox-qt.
Preparing to unpack .../virtualbox-qt_4.3.18-dfsg-2ubuntu1_amd64.deb ...
Unpacking virtualbox-qt (4.3.18-dfsg-2ubuntu1) ...
Processing triggers for man-db (2.7.0.2-2) ...
Processing triggers for ureadahead (0.100.0-16) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for shared-mime-info (1.2-0ubuntu3) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.1+14.10.20140925-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for desktop-file-utils (0.22-1ubuntu2) ...
Processing triggers for mime-support (3.55ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Setting up virtualbox (4.3.18-dfsg-2ubuntu1) ...
* Stopping VirtualBox kernel modules [ OK ]
* Starting VirtualBox kernel modules
* No suitable module for running kernel found
[fail]
invoke-rc.d: initscript virtualbox, action "restart" failed.
Processing triggers for ureadahead (0.100.0-16) ...
Setting up virtualbox-dkms (4.3.18-dfsg-2ubuntu1) ...
Loading new virtualbox-4.3.18 DKMS files...
First Installation: checking all kernels...
Building only for 3.13.0-30-generic
Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.
* Stopping VirtualBox kernel modules [ OK ]
* Starting VirtualBox kernel modules
* No suitable module for running kernel found
[fail]
invoke-rc.d: initscript virtualbox, action "restart" failed.
Setting up virtualbox-qt (4.3.18-dfsg-2ubuntu1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
那么... 我如何获取“此内核的内核源”(3.13.0-30-generic
)或以其他方式让 VirtualBox 正确安装?
答案1
似乎你从 Ubuntu 14.04 升级到 14.10 时出现了问题。你应该使用内核版本 3.16.0-30
确保您的/etc/apt/sources.list
仅包含带有“utopic”而不包含“trusty”的条目。然后确保安装了以下软件包,或者在必要时安装它们:
apt-get 安装 linux-generic linux-image-generic linux-headers-generic linux-signed-generic
之后您应该能够删除并重新安装 virtualbox 并重建内核模块。
答案2
对于那些可能遇到同样问题的人:
我的系统是 Linux Mint 17.1(使用 Ubuntu 14.04 Trusty 存储库)。
我尝试使用以下方法安装 VirtualBox:
sudo apt-get 安装 virtualbox
并遇到同样的错误。
解决方案:
使用以下命令卸载错误版本的 VirtualBox:
sudo apt-get 清除 virtualbox
然后从获取安装程序https://www.virtualbox.org/wiki/Linux_Downloads并安装 deb 包。据说您的存储库中有相同的版本...但这样就可以了。
答案3
我总是发现“删除并重新安装”如此像 Windows...我解决了sudo dpkg-reconfigure virtualbox-dkms
(当然,如果你还没有安装它,你可以使用sudo apt install virtualbox-dkms
)
答案4
我刚刚将旧的 Ubuntu LTS 系统从 12.04 Precise Pangolin 升级到 14.04 Trusty Tahr,需要结合这里评论中的提示才能使 virtualbox 正常运行。
步骤 0:尝试通过 安装 virtualbox sudo apt-get install virtualbox
。它基本可以正常工作,但最后我收到“没有适合运行内核的模块”错误。sudo modprobe vboxdrv
失败,因为没有这样的模块。
因此,解决方法:
步骤1: sudo apt-get install linux-generic linux-image-generic linux-headers-generic linux-signed-generic
.apt-get说前两个已经安装好了,然后安装了第三和第四个。
第2步:卸载并重新安装 virtualbox。sudo apt-get purge virtualbox
然后sudo apt-get install virtualbox
。这一次,virtualbox 安装程序为通用内核编译了一个内核模块。哇哦!
至此,virtualbox仍然不起作用。
步骤3:重启。
现在,sudo modprobe vboxdrv
一切正常,我可以启动虚拟机了。