为什么virtualbox无法在Ubuntu20.4上安装



我正在尝试安装virtualbox。我以前安装过它,它工作正常。今天我尝试添加另一个虚拟机,它开始抱怨dkms的问题,所以我尝试清除并安装所有失败的东西。

$  sudo apt install virtualbox
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
dkms libgsoap-2.8.91 libqt5opengl5 libsdl1.2debian libvncserver1 virtualbox-dkms virtualbox-qt
Suggested packages:

如果不跳过一些输出,我就无法提交我的问题

Building initial module for 5.8.0-36-generic
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/virtualbox-dkms.0.crash'
Error! Bad return status for module build on kernel: 5.8.0-36-generic (x86_64)
Consult /var/lib/dkms/virtualbox/6.1.10/build/make.log for more information.
dpkg: error processing package virtualbox-dkms (--configure):
installed virtualbox-dkms package post-installation script subprocess returned error exit status 10
dpkg: dependency problems prevent configuration of virtualbox:
virtualbox depends on virtualbox-dkms (>= 6.1.10-dfsg-1~ubuntu1.20.04.1) | virtualbox-source (>= 6.1.10-dfsg-1~u
buntu1.20.04.1) | virtualbox-modules; however:
Package virtualbox-dkms is not configured yet.
Package virtualbox-source is not installed.
Package virtualbox-modules is not installed.
Package virtualbox-dkms which provides virtualbox-modules is not configured yet.
dpkg: error processing package virtualbox (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of virtualbox-qt:
virtualbox-qt depends on virtualbox (= 6.1.10-dfsg-1~ubuntu1.20.04.1); however:
Package virtualbox is not configured yet.
dpkg: error processing package virtualbox-qt (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates it's a follow-up error from a previous failure.
                                      No ap
port report written because the error message indicates it's a follow-up error from a previous failure.
                                 Processing
triggers for desktop-file-utils (0.24-1ubuntu3) ...
Processing triggers for mime-support (3.64ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.1) ...
Processing triggers for systemd (245.4-4ubuntu3.3) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for shared-mime-info (1.15-1) ...
Errors were encountered while processing:
virtualbox-dkms
virtualbox
virtualbox-qt
E: Sub-process /usr/bin/dpkg returned an error code (1)

dkms错误

$cat/var/lib/dkms/virtualbox/66.1.10/build/make.log dkms make.log对于内核5.8.0-36-generic(x86_64)的virtualbox-6.1.10,1月12日星期二12:40:32 GMT 2021制作:进入目录'/usr/src/linux-headers-58.80-36-generic'CC[M]/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.o
CC[M]/var/lib/dkms/virtualbox/66.1.10/build/voxdrv/SUPDrv.o CC[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/SUPDrvGip.o CC[M]/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvSem.o CC[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/SUPDrvTracer.o CC[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/SUPLibAll.o CC[M]/var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/alloc-r0drv.o立方厘米[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/r0drv/initterm-r0drv.o
CC[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/r0drv/memobj-r0drv.o
CC[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/r0drv/mpnotification-r0drv.o立方厘米[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/r0drv/powernotification-r0drv.o立方厘米[M]/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/r0drv/linux/assert-r0drv-linux.o包含在的文件中/包括/asm-general/percpu.h:7,来自/arch/x6/include/asm/percpu.h:556,来自/arch/x6/include/asm/premept.h:6,来自/包括/linux/preempt.h:78,来自/包括/linux/spinlock.h:51,从/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/../SUPDrvInternal.h:79,来自/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:32:/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:In函数"supdrvOSChangeCR4":/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:76:38:错误:"cpu_tlbstate"未声明(首次在此函数中使用);你做了吗意思是"cpuhp_state"?760|RTCCUINTREG uOld=this_cpu_read(cpu_tlbstate.cr4);|^~~~~~~/include/linux/percpu defs.h:318:9:注意:在宏的定义中'pcpu_size_call_return'318 |类型(变量)pscr_ret
|^~~~~~~/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24:注意:在宏'this_cpu_read'760|RTCCUINTREG'的扩展中uOld=this_cpuread(cpu_tlbstate.cr4);|^~~~~~~/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38:注意:每个未声明的标识符只报告一次函数出现在760|RTCCUINTREGuOld中=this_cpu_read(cpu_tlbstate.cr4);|^~~~~~~/include/linux/percpu defs.h:318:9:注意:在宏的定义中'pcpu_size_call_return'318 |类型(变量)pscr_ret
|^~~~~~~/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24:注意:在宏'this_cpu_read'760|RTCCUINTREG'的扩展中uOld=this_cpuread(cpu_tlbstate.cr4);|^~~~~~~制作[2]:***[脚本/Makefile.build:290:/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv/linux/SUPDrv-linux.o]错误1生成[2]:***正在等待未完成的作业。。。。制造[1]:***[scripts/Makefile.build:519:/var/lib/dkms/virtualbox/66.1.10/build/vboxdrv]错误2生成:***[生成文件:1780:/var/lib/dkms/virtualbox/66.1.10/build]错误2生成:正在离开目录"/usr/src/linux-headers5.8.0-36-generic">

也有同样的问题,但最终解决了!!!

通过完全删除Virtualbox并重新安装它。

尝试降低内核,但对我来说不起作用

sudo apt-get purge "^virtualbox-.*"
sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean

然后从这个链接下载ubuntu 20.04 的最新virtualbox版本

https://www.virtualbox.org/wiki/Linux_Downloads

我尝试了许多其他解决方案,但都不适用。

尝试从下载页面安装virtualbox,以确保它是最新版本的virtualbox(6.1.16)。
如果它仍然失败,也许这个答案可以帮助

删除5.8等内核版本并降级到5.4.0-60-generic已经解决了这个问题。在使用5.4.0-60-generic内核启动后,我能够使用synaptic安装Virtualbox,我的新虚拟机也能正常工作。

是的,删除或降级内核并解决了问题。你可以使用主线和grub cusomizer。

grub cusomizer:https://tipsonubuntu.com/2018/03/11/install-grub-customizer-ubuntu-18-04-lts/

主线:https://ubuntuhandbook.org/index.php/2020/08/mainline-install-latest-kernel-ubuntu-linux-mint/

也有类似的问题。我遵循的步骤:

  • 完全卸载并清除以前安装virtualbox失败的文件

sudo apt-get purge "^virtualbox-.*"

sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean

  • 运行";所有分配";通过运行wget

wget https://download.virtualbox.org/virtualbox/7.0.6/VirtualBox-7.0.6-155176-Linux_amd64.run

  • 使文件可执行

chmod +x ./VirtualBox-7.0.6-155176-Linux_amd64.run

  • 运行安装脚本

sudo ./VirtualBox-7.0.6-155176-Linux_amd64.run

注意:您可能需要更改的版本号

最简单的解决方案是手动安装libgsoap,然后尝试安装VirtualBox,我也这样做了,它对我的有效

https://ubuntu.pkgs.org/20.04/ubuntu-universe-amd64/libgsoap-2.8.91_2.8.91-2_amd64.deb.html

以上是安装的链接

不建议从终端安装任何软件,因为你总是会得到该软件的旧版本。因此,最好从他们的官方网站安装和下载软件。。

在您的情况下,最好退出终端并尝试从各自的官方网站安装virtualbox:

https://www.virtualbox.org/wiki/Linux_Downloads

如果这也不起作用,请尝试从Synaptic Package Manager中删除所有虚拟盒依赖项,然后重试安装virtualbox。。

最新更新