Ubuntu 18.04.3 LTS Virtualbox提示“Kernel driver not installed (rc=-1908)”问题修复一例

前两天Ubuntu升级了,重启后启动virtualbox报错

从错误报告上反映出来的问题原因是因为某些内核驱动程序没有经过编译,所以Virtualbox无法正常运行。事实上,在Ubuntu上处理这个问题并不难,以下是解决这个问题的几个步骤:

首先,安装内核的头文件和构建工具。

$ sudo apt-get install build-essential module-assistant

$ sudo m-a prepare

接着,编译先前在错误报告中所提到的那个virtualbox内核驱动程序命令。

$ sudo /sbin/vboxconfig

root@timcngsen-All-Series:~# virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (5.0.0-37-generic) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /sbin/vboxconfig

         You will not be able to start VMs until this problem is fixed.
No protocol specified
Qt WARNING: QXcbConnection: Could not connect to display :0
Qt CRITICAL: Could not connect to any X display.
root@timcngsen-All-Series:~# sudo /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
depmod: WARNING: could not open /lib/modules/5.0.0-32-generic/modules.order: No such file
or directory
depmod: WARNING: could not open /lib/modules/5.0.0-32-generic/modules.builtin: No such file or directory
^C
root@timcngsen-All-Series:~# sudo apt-get install build-essential module-assistant
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.4ubuntu1).
build-essential set to manually installed.
The following packages were automatically installed and are no longer required:
  liblua5.1-0 libpyzy-1.0-0v5 python-xdg
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  module-assistant
0 upgraded, 1 newly installed, 0 to remove and 12 not upgraded.
Need to get 90.3 kB of archives.
After this operation, 399 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://cn.archive.ubuntu.com/ubuntu bionic/universe amd64 module-assistant all 0.11.9 [90.3 kB]
Fetched 90.3 kB in 1s (65.9 kB/s)
Selecting previously unselected package module-assistant.
(Reading database ... 195889 files and directories currently installed.)
Preparing to unpack .../module-assistant_0.11.9_all.deb ...
Unpacking module-assistant (0.11.9) ...
Setting up module-assistant (0.11.9) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
root@timcngsen-All-Series:~# sudo m-a prepare
Getting source for kernel version: 5.0.0-37-generic
Kernel headers available in /usr/src/linux-headers-5.0.0-37-generic
Creating symlink...
apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.4ubuntu1).
The following packages were automatically installed and are no longer required:
  liblua5.1-0 libpyzy-1.0-0v5 python-xdg
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 12 not upgraded.

Done!
root@timcngsen-All-Series:~#  sudo /etc/init.d/vboxdrv setup
sudo: /etc/init.d/vboxdrv: command not found
root@timcngsen-All-Series:~# sudo /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.

参考博文:https://www.linuxidc.com/Linux/2017-11/148871.htm 中  对应的Ubuntu版本较老 /etc/init.d/vboxdre setup 命令不存在

直接执行保存提示的命令即可sudo /etc/init.d/vboxdrv setup

再运行Virtualbox就会变得正常了。

原文地址:https://www.cnblogs.com/timseng/p/12017114.html