基本问题:如何让 Ubuntu 识别 Nvidia 显卡?
背景信息:
我更换了一台正在组装的 PC 的主板。第一块主板无法识别内置 GPU (iGPU)。因此,我换了一块支持显卡和 iGPU 的主板。我使用的是与第一块主板相同的操作系统。我只是更换了主板并重新启动,没有其他变化。显卡在之前的主板上工作正常,但在 Ubuntu 上使用新主板时无法正常工作。我还通过加载 Windows 测试了硬件,iGPU 和显卡在新主板上的 Windows 中都能正常工作。因此,我非常有信心这不是主板问题。
系统配置:
- Ubuntu 22.10
- MSI MGE Z690 Ace 主板
- Intel i9-12900k CPU(具有 iGPU)
- Nvidia GeForce RTX 3080 显卡
我已经加载了正确的 nvidia 驱动程序。
$ sudo apt install nvidia-driver-525
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
nvidia-driver-525 is already the newest version (525.78.01-0ubuntu0.22.10.1).
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
但 nvidia 没有看到驱动程序
$ nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
Ubuntu 可以识别显卡和 iGPU
$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3080 Lite Hash Rate] (rev a1)
$ inxi -G
Graphics:
Device-1: Intel AlderLake-S GT1 driver: i915 v: kernel
Device-2: NVIDIA GA102 [GeForce RTX 3080 Lite Hash Rate] driver: N/A
Display: wayland server: X.Org v: 1.22.1.3 with: Xwayland v: 22.1.3
compositor: gnome-shell v: 43.1 driver: X: loaded: nouveau,vesa
unloaded: fbdev,modesetting gpu: i915 resolution: 1920x1080~60Hz
OpenGL: renderer: Mesa Intel UHD Graphics 770 (ADL-S GT1) v: 4.6 Mesa
22.2.5
$ sudo lshw -c video
*-display
description: VGA compatible controller
product: GA102 [GeForce RTX 3080 Lite Hash Rate]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: /dev/fb1
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller cap_list fb
configuration: depth=32 latency=0 mode=1920x1080 visual=truecolor xres=1920 yres=1080
resources: iomemory:600-5ff iomemory:640-63f memory:50000000-50ffffff memory:6000000000-63ffffffff memory:6400000000-6401ffffff ioport:5000(size=128) memory:51000000-5107ffff
*-display
description: VGA compatible controller
product: AlderLake-S GT1
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
logical name: /dev/fb1
version: 0c
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=i915 latency=0 resolution=1920,1080
resources: iomemory:640-63f iomemory:400-3ff irq:206 memory:6403000000-6403ffffff memory:4000000000-400fffffff ioport:6000(size=64) memory:c0000-dffff memory:4010000000-4016ffffff memory:4020000000-40ffffffff
*-graphics
product: EFI VGA
physical id: 3
logical name: /dev/fb0
capabilities: fb
configuration: depth=32 resolution=1680,1050
inxi 命令令人担忧的是,尽管我已确认已加载 nvidia 驱动程序,但 Device-2 的驱动程序为 N/A。
我不确定启动错误是否相关,但以防万一。
我尝试使用 USB 测试 Ubuntu,但这不允许我在“试用 Ubuntu”模式下将视频驱动程序更新为 nvidia 驱动程序。我也没有备用磁盘来加载操作系统的新副本。因此,如果可能的话,我正在尝试修复当前的操作系统负载。
图形驱动程序不符合我的预期。但这可能是正确的,因为系统有两个不同的 GPU
还有一件奇怪的事情。当我登录并切换到 x.org 时,系统挂起一会儿,然后返回到登录提示。
如果系统在一段时间内处于闲置状态,我必须按下 ctrl alt del 才能唤醒屏幕。这会导致系统重新启动。当屏幕空白且无法唤醒时,系统仍可正常运行,因为当屏幕空白且控制台无响应时,我可以从另一台计算机访问它提供的服务 (Plex)。
答案1
我彻底重装了 Ubuntu,问题就解决了。这似乎有点过头了,但我找不到其他方法让 iGPU 和 GPU 都得到识别