今天遇到一个奇怪的问题,滚动更新以后,
pacman -Syyu
虚拟机无法正常启动了。虚拟机启动以后一直显示Starting virtual machine ...
并且卡在20%不动了。
原因分析
我怀疑是更新系统后,某个配置被重置了导致virtualbox没有权限了。经过一系列的测试,我猜测可能是因为内核升级导致的问题。
我查了一下我的内核是:
Kernel: 5.18.1-arch1-1
解决办法
我查了一下当前的virtualbox6.1仅支持到Kernel: 5.17
方法一:等待virtualbox更新
等待virtualbox更新,官方支持Kernel: 5.18就行了。可惜我没有时间等啊,急等使用。
方法二:降低内核版本
安装linux-lts内核
这不是本文的重点,我就执行了以下命令就搞定了。
#安装lts内核
pacman -S linux-lts
pacman -S linux-lts-headers
#生成启动菜单
grub-mkconfig -o /boot/grub/grub.cfg
然后重启电脑,选择linux-lts启动。
详细教程可以参考
https://www.whxsdn.com/news/342.html
重启安装virtualbox
pacman -R virtualbox
pacman -R virtualbox-host-modules-arch
pacman -R virtualbox-host-dkms
#重启安装这次VIRTUALBOX-HOST-MODULES选择virtualbox-host-dkms
pacman -S virtualbox
如下:
# pacman -S virtualbox [11:37:52]
正在解析依赖关系...
:: 有 2 个软件包可提供 VIRTUALBOX-HOST-MODULES :
:: 软件仓库 community
1) virtualbox-host-dkms 2) virtualbox-host-modules-arch
输入某个数字 ( 默认=1 ): 1
正在查找软件包冲突...
软件包 (2) virtualbox-host-dkms-6.1.34-4 virtualbox-6.1.34-4
全部安装大小: 172.65 MiB
:: 进行安装吗? [Y/n]
安装完成后,重启电脑问题解决 了。
失败的尝试过程
- 卸载重新安装virtualbox无法解决
pacman -R virtualbox
pacman -S virtualbox
问题依旧。
-
新建一个虚拟机,问题依旧。
我原本怀疑是虚拟机系统问题,在新建全新虚拟机也遇到这个问题了。 -
使用root权限使用虚拟机软件。
测试结果,root无法打开virtualbox,打开了是黑屏的。 -
重新安装
pacman -S virtualbox-host-modules-arch
实测不行的。 -
卸载并使用
virtualbox-host-dkms
重新安装
#卸载virtualbox
pacman -R virtualbox
#卸载virtualbox-host-modules-arch
pacman -R virtualbox-host-modules-arch
#重新安装
pacman -S virtualbox
执行结果如下:
pacman -S virtualbox [10:18:30]
正在解析依赖关系...
:: 有 2 个软件包可提供 VIRTUALBOX-HOST-MODULES :
:: 软件仓库 community
1) virtualbox-host-dkms 2) virtualbox-host-modules-arch
输入某个数字 ( 默认=1 ): 1
正在查找软件包冲突...
软件包 (3) dkms-3.0.3-1 virtualbox-host-dkms-6.1.34-4 virtualbox-6.1.34-4
下载大小: 0.73 MiB
全部安装大小: 172.75 MiB
:: 进行安装吗? [Y/n] y
:: 正在获取软件包......
启动报这个错了。
5. 继续卸载重新安装virtualbox-host-modules-arch
pacman -R virtualbox
pacman -R virtualbox-host-dkms
安装
我的这个页面
https://archlinux.org/packages/core/x86_64/linux/
找到
所以就安装一下
pacman -S linux-headers 5.18.1.arch1-1
发现这个命令不存在,我搜索了一下。
pacman -Ss linux-headers
执行结果如下:
pacman -Ss linux-headers [10:39:22]
core/linux-headers 5.18.1.arch1-1
Headers and scripts for building modules for the Linux kernel
archlinuxcn/linux-mbp-headers 5.5.13-1
Headers and scripts for building modules for the Linux for MBP kernel
后来才发现直接这样安装就行了。
pacman -S linux-headers
执行结果如下:
# pacman -S linux-headers [10:42:12]
正在解析依赖关系...
正在查找软件包冲突...
软件包 (2) pahole-1.23-1 linux-headers-5.18.1.arch1-1
下载大小: 26.28 MiB
全部安装大小: 142.57 MiB
:: 进行安装吗? [Y/n]
失败的解决办法
pacman -S linux-headers
pacman -R virtualbox
pacman -R virtualbox-host-modules-arch
#重启安装这次VIRTUALBOX-HOST-MODULES选择virtualbox-host-dkms
pacman -S virtualbox
执行结果如下:
# pacman -S virtualbox [10:45:25]
正在解析依赖关系...
:: 有 2 个软件包可提供 VIRTUALBOX-HOST-MODULES :
:: 软件仓库 community
1) virtualbox-host-dkms 2) virtualbox-host-modules-arch
输入某个数字 ( 默认=1 ): 1
正在查找软件包冲突...
软件包 (2) virtualbox-host-dkms-6.1.34-4 virtualbox-6.1.34-4
全部安装大小: 172.65 MiB
:: 进行安装吗? [Y/n] y
以下是探索过程不用看,仅供参考!!!
参考
https://wiki.archlinux.org/title/VirtualBox_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)