无论是在运行dpkg -i virtualbox-7.0_7.0.14-161095~Debian~bookworm_amd64
还是apt install virtualbox-7.0
在 Debian 12 测试中,我都遇到了 libvpx 依赖问题
virtualbox-7.0 : Depends: libvpx7 (>= 1.12.0) but it is not installable
Recommends: linux-image but it is not installable
E: Unable to correct problems, you have held broken packages.
然而当我有一个更高版本时,和 linux-image 一样,我不确定它是否在抱怨......
$ apt list libvpx8
Listing... Done
libvpx8/testing,now 1.13.1-2 amd64 [installed]
$ neofetch
_,met$$$$$gg.
,g$$$$$$$$$$$$$$$P. ----------
,g$$P" """Y$$.". OS: Debian GNU/Linux trixie/sid x86_64
,$$P' `$$$. Host: Dul
',$$P ,ggs. `$$b: Kernel: 6.6.15-amd64
`d$$' ,$P"' . $$$ Uptime: 16 mins
$$P d$' , $$P Packages: 1632 (dpkg)
$$: $$. - ,d$$' Shell: bash 5.2.21
$$; Y$b._ _,d$P' Resolution: 1920x1200
Y$$. `.`"Y$$$$P"' DE: Xfce 4.18
`$$b "-.__ WM: Xfwm4
`Y$$ WM Theme: Default
`Y$$. Theme: Xfce [GTK2]
`$$b. Icons: Tango [GTK2]
`Y$$b.
`"Y$b._
$ apt list linux-image-6.6.1*
Listing... Done
linux-image-6.6.13-amd64/now 6.6.13-1 amd64 [installed,local]
linux-image-6.6.15-amd64-dbg/testing 6.6.15-2 amd64
linux-image-6.6.15-amd64-unsigned/testing 6.6.15-2 amd64
linux-image-6.6.15-amd64/testing,now 6.6.15-2 amd64 [installed,automatic]
linux-image-6.6.15-cloud-amd64-dbg/testing 6.6.15-2 amd64
linux-image-6.6.15-cloud-amd64-unsigned/testing 6.6.15-2 amd64
linux-image-6.6.15-cloud-amd64/testing 6.6.15-2 amd64
linux-image-6.6.15-rt-amd64-dbg/testing 6.6.15-2 amd64
linux-image-6.6.15-rt-amd64-unsigned/testing 6.6.15-2 amd64
linux-image-6.6.15-rt-amd64/testing 6.6.15-2 amd64
运行apt --fix-broken install
只会删除损坏的 virtualBox 安装。
如果尝试安装 virtualBox-6.1,也会发生同样的情况。
答案1
我使用的是 Debian 12 稳定版,这个问题让我整天都抓狂。就我而言,似乎是在存储库中找不到与 linux-headers-6.1.0-18-common 相关的软件包。我尝试了很多方法(包括使用 wget 下载 linux-headers-6.1.0-18-amd64_6.1.76-1_amd64.deb - 希望它可能包含该软件包 - 放入 /var/cache/apt/archives 并使用 sudo apt 从那里安装它),结果如下...
将安装以下新软件包:linux-compiler-gcc-12-x86 linux-headers-6.1.0-18-amd64 linux-headers-6.1.0-18-common linux-kbuild-6.1
...尝试查找下面的包时失败了......
linux-headers-6.1.0-18-common_6.1.76-1_all.deb
...我已经搜索过,但尚未找到(最接近的是上面提到的 linux-headers-6.1.0-18-amd64_6.1.76-1_amd64.deb)
我可以列出我尝试过的所有其他方法,但由于它们都没有用,所以我就不给大家带来痛苦了!;-)
祝一切顺利,布莱恩
更新:已修复,请参阅以下帖子。
答案2
进步!! :-)
我找到了该包,因此从 /var/cache/apt/archives 中运行了以下两个命令:
sudo apt install ./linux-headers-6.1.0-18-common_6.1.76-1_all.deb
然后我尝试了下面的方法...
sudo apt 安装 virtualbox-7.0
...这似乎有效,尽管我在最后收到了以下失败消息(以及下一步该做什么的建议):
vboxdrv.sh:失败:
系统正在安全启动模式下运行,但是您的发行版未提供用于自动生成模块签名所需密钥的工具。请考虑手动生成并注册它们:
sudo mkdir -p /var/lib/shim-signed/mok
sudo openssl req -nodes -new -x509 -newkey rsa:2048 -outform DER -addext "extendedKeyUsage=codeSigning" -keyout /var/lib/shim-signed/mok/MOK.priv -out /var/lib/shim-signed/mok/MOK.der
sudo mokutil --import /var/lib/shim-signed/mok/MOK.der
sudo reboot
系统重启后重新启动“rcvboxdrv setup”
因此,我按照上述步骤操作,回答了各种与证书相关的问题(国家、州、OU、电子邮件地址等),并在出现提示时设置密码,完成后我使用 sudo 重新启动,然后出现一个屏幕询问我是否要安装证书,所以我只是按照我的直觉去做,一切顺利(它提示我输入上述步骤中设置的密码),完成后我选择重新启动选项,机器正常启动(唷;它是 Win10 和 Debian 的双启动,所以我有点担心弄乱 UEFI 证书和垫片,但一切都正常)。然后我运行 sudo rcvboxdrv setup,它吐出以下消息:
sudo rcvboxdrv setup [sudo] briain 的密码:vboxdrv.sh:停止 VirtualBox 服务。vboxdrv.sh:启动 VirtualBox 服务。vboxdrv.sh:构建 VirtualBox 内核模块。vboxdrv.sh:签署 VirtualBox 内核模块。
因此我尝试了 systemctl --type=service --state=running 来查看是否可以发现任何有趣的条目,但列表中没有与 Virtualbox 相关的条目,因此我决定列出所有可用单元(sudo systemctl list-unit-files)然后我可以看到几个有希望的条目(并且都已启用)。
vboxdrv.service 已启用
vboxweb-service.service 已启用
无论如何,无需对上述两个 systemd 单元进行任何操作,我查看并注意到 Virtualbox 现在位于桌面启动器菜单中,然后当我单击它时,它就按预期启动了!
如果我发现任何有趣的事情,我会在明天继续并更新这个帖子,但到目前为止,它看起来很有希望。
布莱恩
PS 我刚刚检查了版本(vboxmanage -v | cut -dr -f1),报告的是 7.0.14,因此我成功下载并安装了相应版本的扩展包:
sudo vboxmanage extpack 安装 Oracle_VM_VirtualBox_Extension_Pack-7.0.14.vbox-extpack
一切看起来都很好,所以明天我将安装为虚拟机创建的新分区并尝试安装新的虚拟机。:-)