编辑:请参阅最后的更新以了解解决方案,标题已更改以更好地反映问题。
我在带有 Geforce RTX 2060 卡的系统上安装了 Ubuntu 22.04 LTS。我最近对硬件做了一些小改动(将显卡从一个 PCI 插槽换到另一个,几天后又安装了一些机箱风扇),在最新的更改之后,我发现系统的图形输出在启动后不久就会随机消失。启动似乎没问题,我可以像往常一样登录、开始打开浏览器、终端等,然后屏幕变蓝,就像没有信号时一样。任何打开终端的尝试(Ctrl+Alt+F3、Ctrl+Alt+F1……)都是无用的,我只能按 Alt+SysRq+REISUB 重新启动系统。
查看系统/内核日志,问题似乎由此开始:
kernel: [ 1531.539086] xhci_hcd 0000:0c:00.2: Unable to change power state from D3hot to D0, device inaccessible
kernel: [ 1531.539241] nouveau 0000:0c:00.0: timer: stalled at ffffffffffffffff
kernel: [ 1531.539244] ------------[ cut here ]------------
kernel: [ 1531.539245] nouveau 0000:0c:00.0: timeout
后来又出现了一些类似的
kernel: [ 1531.599952] xhci_hcd 0000:0c:00.2: Unable to change power state from D3cold to D0, device inaccessible
kernel: [ 1531.599959] xhci_hcd 0000:0c:00.2: Controller not ready at resume -19
kernel: [ 1531.599961] xhci_hcd 0000:0c:00.2: PCI post-resume error -19!
kernel: [ 1531.599962] xhci_hcd 0000:0c:00.2: HC died; cleaning up
我尝试浏览这些消息并发现有些人在将卡从一个 PCI 插槽更换到另一个 PCI 插槽后遇到了一些问题(这让我感到惊讶),但有趣的是,大约一周前我确实更换了 PCI 插槽的显卡,在这周里一切都很好,直到今天关闭电源添加机箱风扇并重新启动后(风扇是 Arctic P14 slim PWM PST,连接到已经安装的 Arctic P12 PWM PST,并将其连接到主板(即华硕 ROG Strix X570-e)上的 CHA_FAN1)我才遇到这些问题。
所以,我不知道问题是否是硬件的变化导致了冲突,或者是否在上次启动后启动了某些 nouveau 驱动程序的更新(我从一次启动到另一次启动花费了大量时间,所以我现在才检测到)。
有人知道问题是什么吗?或者我应该在日志中查找什么才能更好地查明问题?非常感谢!
** 更新:刚刚尝试将显卡放回之前的 PCI 插槽,问题再次出现。所以我猜想这一定与最近的驱动程序更新或类似的东西有关。有人知道吗?
** 更新 2:正如 kanehekili 在回答的评论中所说,我想我现在知道问题的根源了。该卡最初位于 x16 插槽中,然后我将其更改为另一个可容纳 x16 卡但实际上是 x8 插槽的插槽。主板的文档非常误导性地将插槽标记为 PCIEX16_1 和 PCIEX16_2,忽略了第二个插槽实际上只有 x8 的事实。那么,这种变化肯定会引发驱动程序的一些问题,即使在将卡放回 x16 后仍然存在。通过使用 GUI“附加驱动程序”菜单安装 Nvidia“来自 nvidia-driver-530(专有)的驱动程序元包”,最终解决了该问题。我注意到,尝试菜单中的第一个驱动程序选项,即 530 的“-open”版本,仍然会出现一些问题,因为系统无法完全识别该卡(例如,终端中 nvidia-smi 的输出将显示“未找到设备”)。现在,一切似乎又恢复正常了。我将问题标记为已解决。
答案1
使用 NVIDIA 显卡已有一段时间了,我建议安装原生 Nvidia 驱动程序,而不是默认的 Nouveau 开源驱动程序。Ubuntu 提供了一个“硬件应用程序”来帮你完成这项工作。请注意,原生驱动程序不适用于 Wayland,你将再次使用 X-Server 会话。NVIDIA 驱动程序将接管显卡的电源管理,这似乎是你遇到的问题。