我今天将 Kubuntu 21.10 VM 升级到了 22.04 LTS。安装顺利,所有东西都升级了。但是,重启后,我只看到以下消息:
SMBus base address uninitialized - upgrade BIOS or use force_addr=0xaddr
即使我离开一会儿,KDE 环境也从未启动。
我可以切换到不同的终端,例如使用Ctrl++ ,并登录到终端,但我无法加载 GUI。AltF2
我见过这个问题,在 VirtualBox 中启动 Ubuntu 时出现 SMBus/BIOS 错误,在 VirtualBox 中出现同样的错误,并尝试将两者列入黑名单i2c_piix4
;intel_rapl
结果相同。事后检查lsmod
,即使列入黑名单,它仍然可以加载。我还尝试将黑名单放入文件中/etc/modprobe.d/no_i2c_piix4.conf
;结果相同,仍然可以加载。
有人知道为什么会发生这种情况,以及如何解决吗?
答案1
事实证明,这里的问题是 VM 是 Gen 1 VM,而 22.04 需要 Gen 2 VM(或者至少,我无法让它作为 Gen 1 VM 工作)。
将现有虚拟机从 Gen 1 升级到 Gen 2 是不可能的。但是,您可以删除现有虚拟机(确保不要删除其 vhd 文件),然后创建新的 Gen 2 虚拟机并将旧 vhd 文件攻击到它。这应该将系统“升级”至第二代;尽管这显然是一个单向过程。
我还通过研究注意到,你应该禁用虚拟机上的安全启动;我无论如何都关闭了它,但如果你做已启用它并且遇到困难,那么我建议尝试禁用它。
答案2
得到了类似的错误。我得到的错误消息是Unable to find a valid framebuffer device
,在中提示/var/log/Xorg.0.log
。
复制自关联在 proxmox 论坛中,似乎找不到显示设备。修复方法:-
Ctrl + Alt + F2 进入控制台
lspci
查找 VGA 设备的 pci id,例如 00:08.0cd /usr/share/X11/xorg.conf.d
sudo nano <your config name>.conf
,例如 hyperv.conf将以下内容放入文件中。您的 PCI ID 可能不同
Section "Device" Identifier "Card0" Driver "fbdev" BusID "pci0:08:0:0:" EndSection
保存并关闭
startx
如果成功,您应该立即看到 GUI 已加载。
仅供参考。我在将 lubuntu 从 KVM 和 VM-Workstation 转换到 Hyper-V 平台时遇到了这个问题。
参考: https://forum.proxmox.com/threads/generic-solution-when-install-gets-framebuffer-mode-fails.111577/