Ubuntu 20.04。我使用 package 安装了 virtualbox;它起作用了,我创建并运行了一个 RM。但在软件更新后停止工作。我无法运行虚拟机,消息说:
Kernel driver not installed (rc=-1908)
The VirtualBox Linux kernel driver is either not loaded or not set up correctly.
Please reinstall virtualbox-dkms package and load the kernel module by executing
'modprobe vboxdrv'
as root.
Run Code Online (Sandbox Code Playgroud)
我设法禁用了安全启动,所以这与此无关。
现在我尝试按要求重新安装 virtualbox-dkms 包:
sudo apt remove virtualbox-dkms
sudo apt install virtualbox-dkms
Run Code Online (Sandbox Code Playgroud)
但后来我收到以下错误:
Préparation du dépaquetage de .../virtualbox-dkms_6.1.10-dfsg-1~ubuntu1.20.04.1_amd64.deb ...
Dépaquetage de virtualbox-dkms (6.1.10-dfsg-1~ubuntu1.20.04.1) ...
Paramétrage de virtualbox-dkms (6.1.10-dfsg-1~ubuntu1.20.04.1) ...
Loading new virtualbox-6.1.10 DKMS files...
Building for 5.8.0-34-generic
Building initial module for 5.8.0-34-generic
Error! Bad return status for module build on kernel: 5.8.0-34-generic (x86_64)
Consult /var/lib/dkms/virtualbox/6.1.10/build/make.log for more information.
dpkg: erreur de traitement du paquet virtualbox-dkms (--configure) :
installed virtualbox-dkms package post-installation script subprocess returned error exit status 10
Des erreurs ont été rencontrées pendant l'exécution :
virtualbox-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)
如果我查看 /var/lib/dkms/virtualbox/6.1.10/build/make.log 我看到:
/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38: error: ‘cpu_tlbstate’ undeclared (first use in this function); did you mean ‘cpuhp_state’?
760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
| ^~~~~~~~~~~~
./include/linux/percpu-defs.h:318:9: note: in definition of macro ‘__pcpu_size_call_return’
318 | typeof(variable) pscr_ret__; \
| ^~~~~~~~
/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro ‘this_cpu_read’
760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
| ^~~~~~~~~~~~~
/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38: note: each undeclared identifier is reported only once for each function it appears in
760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
| ^~~~~~~~~~~~
./include/linux/percpu-defs.h:318:9: note: in definition of macro ‘__pcpu_size_call_return’
318 | typeof(variable) pscr_ret__; \
| ^~~~~~~~
/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro ‘this_cpu_read’
760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
| ^~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:290 : /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.o] Erreur 1
make[2]: *** Attente des tâches non terminées....
make[1]: *** [scripts/Makefile.build:519 : /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv] Erreur 2
Run Code Online (Sandbox Code Playgroud)
我缺少什么?
Ter*_*nce 21
这是 5.8 内核和 Virtualbox 6.1.10 版的错误 https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1891916
但是,您可以从 Virtualbox 自己安装 Virtualbox 6.1.16 版,该版本适用于内核 5.8 并且会保持更新。 https://www.virtualbox.org/wiki/Linux_Downloads
从说明:
添加回购:
echo "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
Run Code Online (Sandbox Code Playgroud)
安装密钥:
wget https://www.virtualbox.org/download/oracle_vbox_2016.asc
sudo apt-key add oracle_vbox_2016.asc
Run Code Online (Sandbox Code Playgroud)
更新您的回购:
sudo apt update
Run Code Online (Sandbox Code Playgroud)
安装 Virtualbox 6.1
sudo apt install virtualbox-6.1
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
归档时间: |
|
查看次数: |
9343 次 |
最近记录: |