所以我尝试在 18.04 上安装虚拟盒。它告诉我重新安装 virtualbox dkms。浏览完论坛后,我决定需要运行sudo apt-get --reinstall virtualbox-dkms
。当我这样做时,Ubuntu 说dpkg
已中断。您必须手动运行sudo dpkg --configure -a
才能更正问题。我这样做了,但它就永远挂起了。我是否遗漏了修复此问题所需的某些东西?
编辑:卡住的那一行是:
building initial module for 4.15.0-23 generic
答案1
修复这个问题的方法是,以图形模式运行 Ubuntu 的“软件更新程序”,然后按照提示重新启动。终端apt
恢复正常 :)
答案2
这似乎是安全启动的问题,我遇到了同样的问题并在该论坛中找到了解决方案:https://ubuntuforums.org/showthread.php?t=2393436。
尝试重新启动并禁用安全启动,然后重新启动,并重新安装virtualbox-dkms
或运行dpkg-reconfigure virtualbox-dkms
。现在应该可以正常工作了。
如果您希望安全启动仍然有效,则需要重新启用安全启动并按照本指南对模块进行签名:https://blog.ubuntu.com/2017/08/11/how-to-sign-things-for-secure-boot
这很不幸,因为这意味着如果您想启用安全启动,那么每次内核升级时,您都需要:
- 重新启动并禁用安全启动
- 跑步
dpkg-reconfigure virtualbox-dkms
- 重新启动并重新启用安全启动
- 签署所有新模块
- 最后一次重新启动(或者可能只是 modprobe 模块)
这需要很多麻烦和重启,但至少应该能正常工作。当然,您也可以将安全启动保持禁用状态,直到您重新启动进入 Windows。
编辑:
有一种更好的方法可以做到这一点,不需要多次重启。显然,正在发生的事情是 MOK 模块签名正在后台等待 root 密码。查看此答案以获取更多信息:dpkg 的重新配置问题