自更新至内核 4.13.0-26-generic 以来,VirtualBox 5.0.40 导致整个主机崩溃

自更新至内核 4.13.0-26-generic 以来,VirtualBox 5.0.40 导致整个主机崩溃

我于 2018 年 1 月 10 日通过常规软件更新程序收到了更新。此后,VirtualBox 无法启动任何虚拟机,抱怨 dkms 并要求制作 modprobe vboxdrv。按照建议,我使用以下命令重新安装了 virtualbox-dkms:

sudo apt-get --reinstall install virtualbox-dkms

在此之后,我尝试重新启动虚拟机,但整个机器却冻结了,需要进行硬重启。

有没有办法让 VirtualBox 与最新的内核一起工作?

编辑:

根据 N0rbert 的建议,命令如下:

apt-cache 策略 `dpkg -S VirtualBox | head -n1 | sed -e 's/://g' | awk '{print $1}'`

给出:

虚拟盒QT:
  已安装:5.0.40-dfsg-0ubuntu1.16.04.2
  候选版本:5.0.40-dfsg-0ubuntu1.16.04.2
  版本表:
 *** 5.0.40-dfsg-0ubuntu1.16.04.2 500
        500 http://fr.archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 软件包
        100 /var/lib/dpkg/状态
     5.0.18-dfsg-2build1 500
        500 http://fr.archive.ubuntu.com/ubuntu xenial/multiverse amd64 软件包

编辑(2018 年 3 月 29 日):今天使用 Ubuntu Ubdate 后,问题已解决。我看到它有一些 virtualbox 更新,因此我尝试再次使用最新内核启动。然后我必须运行

sudo apt-get --reinstall 安装 virtualbox-dkms

此后,VirtualBox 中的虚拟机开始工作,整个计算机没有崩溃。终于!

答案1

使用 oracle 存储库升级到 VirtualBox 5.2 对我来说是有效的。

步骤如下(遗留文档在此处):

1)添加Oracle存储库:

sudo add-apt-repository "deb http://download.virtualbox.org/virtualbox/debian xenial contrib"

如果您没有使用的 Ubuntu 16.04(xenial),请修改此命令以适合您的 ubuntu 版本。

2)为存储库添加 GPG 密钥:

wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -

3)检查GPG密钥:

sudo apt-key finger Oracle

应出示以下指纹:

B9F8 D658 297A F3EF C18D  5CDF A2F6 83C5 2980 AECF
Oracle Corporation (VirtualBox archive signing key) 

7B0F AB3A 13B9 0743 5925  D9C9 5442 2A4B 98AB 5139
Oracle Corporation (VirtualBox archive signing key)

4)安装VirtualBox 5.2

sudo apt update && sudo apt install virtualbox-5.2

就我而言,我遇到了错误,我不得不删除 virtualbox-dkms 包并运行 /sbin/vboxconfig:

sudo apt remove --purge virtualbox-dkms
sudo  /sbin/vboxconfig

根据您的桌面环境,启动器菜单图标可能已消失。在这种情况下,请手动重新创建它;命令很简单virtualbox

答案2

交叉引用:

此问题的官方错误跟踪是:

https://bugs.launchpad.net/bugs/1736116

那里有安装 VB 5.1.30 和 5.2.4 的解决方案。一些用户报告了 5.2.4 的 QT 依赖问题,因此 5.1.30 可能是一个更安全的选择。

其中列出了安装任一版本的几个选项,并且讨论仍在进行中,因此我不会在这里重现。

答案3

当您启动机器时,进入“Ubuntu 的高级选项”来更改启动到哪个内核。

选择版本号,如 4.10——应该开始工作,直到问题得到解决。

答案4

所以,就我的情况而言,内核模块没有被正确删除。

以下是详细信息:

root@Dell5280 [~]# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS

root@Dell5280 [~]# uname -r
4.13.0-31-generic

问题:

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
version: 5.0.40_Ubuntu r115130 (0x00240000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 6D8B4900A693FC50489A130
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload

使固定:

root@Dell5280 [~]# rm /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
modinfo: ERROR: could not get modinfo from 'vboxdrv': No such file or directory
[1] root@Dell5280 [~]# /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: Starting VirtualBox services.

root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/misc/vboxdrv.ko
version: 5.2.7 r120349 (0x00290000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 4880B21EFF1B605D6402982
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload
parm: force_async_tsc:force the asynchronous TSC mode (int)

此后,一切正常(至少就我而言)

希望能帮助到你。

我回复于https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116

相关内容