前提
我几乎尝试了所有能找到的方法,我将在下面列出这些尝试。
问题结构如下:前提、问题、问题、尝试。
我的电脑:
- 技嘉 X570 I AORUS PRO WIFI Mini ITX AM4
- AMD 锐龙 5 5600x (Zen3)
- Palit Dual GeForce RTX3060Ti 8GB
- MX500 1TB(Ubuntu)
- Sabrent Rocket 4.0 500GB(Windows)
- MX500 2TB(存储)
还:
- 安全启动已禁用(因此 CSM 也已禁用)
客观的
Ubuntu 22.04 LTS 安装用于机器学习开发,主要是 GPU 加速:
- 需要 CUDA
- Nouveau 驱动程序不是最佳的,因此目前已被列入黑名单
- 需要 NVIDIA 驱动程序
blacklist nouveau
options nouveau modeset=0
问题
司机是被认定为:
- 它在软件和更新中显示为已安装
但显然不曾用过因为我是在 1024x768 (4:3) 分辨率下写这篇文章的。
看看司机/公认的:
teniu@AW-PC:~$ sudo lshw -c video
[sudo] password for teniu:
*-display
description: VGA compatible controller
product: GA104 [GeForce RTX 3060 Ti]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:09:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:108 memory:fb000000-fbffffff memory:d0000000-dfffffff memory:e0000000-e1ffffff ioport:e000(size=128) memory:fc000000-fc07ffff
*-graphics
product: EFI VGA
physical id: 1
logical name: /dev/fb0
capabilities: fb
configuration: depth=32 resolution=1024,768
teniu@AW-PC:~$ modinfo $(modprobe --resolve-alias nvidia)
modprobe: FATAL: Module nvidia not found in directory /lib/modules/5.19.0-41-generic
modinfo: ERROR: missing module or filename.
尝试去使用自动安装安装驱动程序,输出:
raceback (most recent call last):
File "/usr/bin/ubuntu-drivers", line 513, in <module>
greet()
File "/usr/lib/python3/dist-packages/click/core.py", line 1128, in __call__
return self.main(*args, **kwargs)
File "/usr/lib/python3/dist-packages/click/core.py", line 1053, in main
rv = self.invoke(ctx)
File "/usr/lib/python3/dist-packages/click/core.py", line 1659, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/lib/python3/dist-packages/click/core.py", line 1395, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/lib/python3/dist-packages/click/core.py", line 754, in invoke
return __callback(*args, **kwargs)
File "/usr/lib/python3/dist-packages/click/decorators.py", line 84, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "/usr/lib/python3/dist-packages/click/core.py", line 754, in invoke
return __callback(*args, **kwargs)
File "/usr/bin/ubuntu-drivers", line 432, in autoinstall
command_install(config)
File "/usr/bin/ubuntu-drivers", line 187, in command_install
UbuntuDrivers.detect.nvidia_desktop_pre_installation_hook(to_install)
File "/usr/lib/python3/dist-packages/UbuntuDrivers/detect.py", line 839, in nvidia_desktop_pre_installation_hook
with_nvidia_kms = version >= 470
UnboundLocalError: local variable 'version' referenced before assignment
忽略这意味着安装指定版本的驱动程序,因此:
sudo apt install nvidia-driver-530-open
它做它的事,然后尝试 nvidia-smi,输出:
No devices were found
内核模块是否已加载?似乎已加载:
teniu@AW-PC:~$ lsmod | grep nvidia
nvidia_uvm 1441792 0
nvidia_drm 77824 1
nvidia_modeset 1404928 1 nvidia_drm
nvidia 6234112 5 nvidia_uvm,nvidia_modeset
drm_kms_helper 200704 1 nvidia_drm
drm 581632 5 drm_kms_helper,nvidia,nvidia_drm
再次尝试查看是否看到 nvidia:
lspci | grep -i nvidia
teniu@AW-PC:~$ lspci | grep -i nvidia
09:00.0 VGA compatible controller: NVIDIA Corporation GA104 [GeForce RTX 3060 Ti] (rev a1)
09:00.1 Audio device: NVIDIA Corporation GA104 High Definition Audio Controller (rev a1)
看起来是这么回事。
问题与回顾
nvidia-smi
不起作用,但可以看到驱动程序?我现在一头雾水。
用于此的 Ubuntu 22.04 LTS 是全新安装。
我认为这个输出可以作为一个重要的提示,因为在内核模块目录中找不到 NVIDIA 模块。
teniu@AW-PC:~$ modinfo $(modprobe --resolve-alias nvidia)
modprobe: FATAL: Module nvidia not found in directory /lib/modules/5.19.0-41-generic
modinfo: ERROR: missing module or filename.
- 我现在该怎么办?
尝试(全部失败)
- 清除并重新安装(多个)
- 将 530 驱动程序更改为 515(两次)
- (我安装错了版本吗……?)
- 禁用安全启动(并重试一切)
- 全新安装 Ubuntu
- 在 Windows 上测试(它可以在那里运行,没有硬件问题)
- 标题更新,0 个更新
sudo apt install linux-headers-$(uname -r)
- (我想避免通过下载手动安装)
- 放弃(不是一个选择)
有用但不相关的信息
当我组装 PC 时,我必须更新 BIOS由于主板不提供对Zen3Ryzen 5系列的架构。
我提到这一点只是因为在启动时,我看到快速终端乱码,顶部写着一些关于 AMD 未被识别的内容。尽管我非常怀疑它是否在某种程度上相关或重要,因为它之后才起作用。
答案1
解决方案
驱动程序版本检查是在名称末尾完成的,因此如果“-open”位于末尾,可能会混淆某些脚本,如@ubfan1 所指出的。
因此,您只需检查受到推崇的适用于您的特定卡的版本此处(NVIDIA 官方驱动程序)并查看版本。
在软件和更新中,您可以找到不以“-open”结尾的正确驱动程序版本并安装该版本。
笔记: 它可能需要一段时间。
我可能想要添加“ autoinstall
forubuntu-drivers
没有起作用”,这似乎是内部错误。
我建议不要手动(直接下载和)安装驱动程序,因为它们更难维护。