近期登入服务器,用nvidia-smi和nvitop查看,发现报了一个错:

python
> nvitop
NVML ERROR: RM has detected an NVML/RM version mismatch
> nvidia-smi
Failed to initialize NVML: Driver/library version mismatch
NVML library version: 595.84
我们以nvidia-smi的输出log为例,
这个错误通常表示NVIDIA驱动程序和NVIDIA管理库(NVML)之间存在版本不匹配的问题,
NVML库是NVIDIA提供的用于管理NVIDIA GPU的库和工具,它们通常由NVIDIA驱动程序一起安装
- 显示NVIDIA的驱动程序版本信息
python
# 查看内核加载的NVIDIA驱动版本
> cat /proc/driver/nvidia/version
# 当前 Ubuntu24.04 系统,搭载 595.71.05 版本 NVIDIA Linux 内核驱动,驱动文件由 gcc13.3.0 编译生成
NVRM version: NVIDIA UNIX x86_64 Kernel Module 595.71.05 Fri Apr 24 06:36:12 UTC 2026
GCC version: gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04.1)
也就是说系统中安装的NVIDIA驱动程序还是在的,并且 当前内存中运行的内核驱动版本 为 595.71.05
- 检查一下NVIDIA管理库(NVML)
python
# 1️⃣ dpkg 检查的是"硬盘里有没有这个软件的安装包"
# 查看用户态NVML相关库版本(Debian/Ubuntu)
> dpkg -l | grep nvidia-driver
# 查看 Ubuntu 系统已安装 NVIDIA 驱动版本
# 系统为 Ubuntu 24.04,成功安装 595.84 版本 NVIDIA 正式驱动,用户态 NVML 库随同驱动正常部署可用
ii nvidia-driver-595 595.84-0ubuntu0.24.04.1
amd64 NVIDIA driver metapackage
# 2️⃣ ldconfig 检查的是"系统能不能在运行时找到并调用这个软件的库文件"
# 检查一下NVIDIA管理库(NVML)
> ldconfig -p | grep nvml
什么都没有输出
ldconfig 什么都没有, 这表示系统的动态链接库缓存里 什么都没有




简单来说就是,**dpkg** 的账本里说东西装好了(安装了595.84 版本驱动,比在内存上的驱动版本595.71.05更高),但 **ldconfig** 的缓存里却找不到,这代表驱动的安装虽然在硬盘上完成了,但"最后一步的注册"被系统漏掉了。

Ubuntu显卡驱动自动更新,导致更新后的驱动程序和系统正在使用的内核程序版本不一致了。所以解决问题的思路就是让其版本一致即可。
直接reboot重启系统即可,系统会自动跟新内核,使得版本一致;
当系统重新开机时,Linux 底层初始化脚本会自动扫描所有的系统目录,把硬盘里新装的 595.84 驱动库重新登记一遍
python
systemctl reboot