这不仅仅是一个问题,更是一份文档。
这是关于virtualbox 6.1.10、Ubuntu 20.04和virtualbox-dkms包构建失败导致apt-get install
或update
失败的情况。
我最近在Ubuntu 20.04和Virtual Box 6.1.10上遇到了一个问题,类似于这里和这里所描述的情况。
问题在于,在ubuntu软件中心安装virtual box会安装不兼容当前ubuntu内核版本v5.8.xx的版本v6.1.10。
虽然这些都是已知问题,但当我错误地尝试从包商店重新安装vbox时,我的问题出现了。之前,virtualbox-dkms已经编译并且重新安装会移除正常运行的包,该过程会因错误(状态10
)而失败。所以我就遇到了这样的错误:
Loading new virtualbox-6.1.10 DKMS files...
Building for 5.8.0-36-generic
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
Processing triggers for man-db (2.9.1-1) ...
Errors were encountered while processing:
virtualbox-dkms
这个错误可能会出现在以下位置:
cat /var/log/apt/history.log
---or---
/var/log/apt/term.log
为了解决这个问题,我直接从他们的网站重新安装了virtualbox v.6.1.16,并按照这里的说明进行操作。
然而,在随后的更新中,我仍然收到有关virtualbox-dkms的相同错误,即使该过程不再使用。因此,为了解决这个问题,我遵循这个网站的指示。
我复制了导致失败的后安装脚本:
sudo mv /var/lib/dpkg/info/virtualbox-dkms.postinst ./virtualbox-dkms.postinst.bac
然后清除了旧版VirtualBox安装的剩余DKMS文件并进行了更新:
sudo apt-get purge virtualbox-dkms
sudo apt-get update && sudo apt-get upgrade
到目前为止没有问题!希望这可以帮助其他人!
简而言之:尝试重新安装修复通过Ubuntu软件管理器安装的VirtualBox v6.10。 v6.10与Ubuntu 20.04内核v5.8存在问题。要修复损坏的软件包virtualbox-dkms,请移除后安装脚本,并清除旧的virtualbox v6.1.10文件,然后直接从VirtualBox网站安装以获取VirtualBox ^v6.1.16。
sudo apt-get install -f
的提示非常有用,因为在第一次尝试安装时失败了。 - Moongazer