nvidia-smi报错:Failed to initialize NVML: Driver/library version mismatch
由于手欠误点了ubuntu的software updater,系统自动进行了升级。
导致使用nvidia-smi命令报错:Failed to initialize NVML: Driver/library version mismatch
百度得知,可能是NVIDIA内核驱动版本与系统驱动版本不匹配。
输入命令cat /proc/driver/nvidia/version,查看显卡驱动所使用的内核版本
这个跟我之前手动安装的NVIDIA 470.239.06版本驱动是对应上的,通过输入cat /var/log/dpkg.log | grep nvidia命令,查看系统驱动日志如下
可以看到libnvidia-compute-470:amd64和libnvidia-compute-460:amd64被升级了
由470.239.06-0ubuntu0.20.04.1升级到了 470.256.02-0ubuntu0.20.04.1
输入命令dpkg -l | grep nvidia,查看驱动版本如下
确实升到了470.256.02-0ubuntu0.20.04.1版本。
百度了很多解决方案,基本上都是建议重装驱动,由于我这台机器要兼容GT730和T4同时工作,驱动安装过于繁琐,实在不想重新再重装一遍驱动了,于是另想它法。
由于发现只有libnvidia-compute-470:amd64和libnvidia-compute-460:amd64两个包被升级,于是考虑是否能通过apt install 重装低版本的包解决。
输入命令sudo apt-cache madison libnvidia-compute-470:amd64,查看libnvidia-compute-470可安装版本
结果发现除了当前的470.256.02-0ubuntu0.20.04.1,就是我需要回退的版本470.239.06-0ubuntu0.20.04.1
这就好办了,输入指令sudo apt install libnvidia-compute-470:amd64=470.239.06
-0ubuntu0.20.04.1指定安装之前版本
成功安装!
依葫芦画瓢,重装libnvidia-compute-460:amd64
重新查看一下驱动版本,已经恢复到正确版本
最后验证一下,输入nvidia-smi
又见到熟悉的界面!安逸咯,欧了~