Failed to initialize NVML: Driver/library version mismatch 的解决方法
首发于知乎: https://zhuanlan.zhihu.com/p/643343668
全网同名, 欢迎大家关注我的知乎帐号!
经常电脑好好的, 昨天还可以训练, 第二天忽然驱动就掉了:
这个错误通常表示NVIDIA驱动程序和NVIDIA管理库(NVML)之间存在版本不匹配的问题。
显示NVIDIA的驱动程序版本信息的命令: cat /proc/driver/nvidia/version
打印出一个文本字符串,其中包含了NVIDIA驱动程序的版本号、构建日期、操作系统类型以及其他细节信息。
也就是说系统中安装的NVIDIA驱动程序还是在的.
NVML库是NVIDIA提供的用于管理NVIDIA GPU的库和工具,它们通常由NVIDIA驱动程序一起安装.
那么在检查一下NVIDIA管理库(NVML)ldconfig -p | grep nvml
上述命令需要在具有root权限的终端或命令行窗口中运行。另外,安装NVIDIA驱动程序可能需要重启系统才能生效。
什么都没有, 这表示系统中没有安装NVML库。
系统中突然没有NVML库了, 这可能有以下原因:
-
升级了NVIDIA驱动程序:如果最近升级了NVIDIA驱动程序,可能会导致NVML库被更新或卸载。在这种情况下,可以尝试重新安装NVIDIA驱动程序以恢复NVML库。
-
升级了操作系统内核:如果最近升级了操作系统内核,可能会导致与NVIDIA驱动程序不兼容,从而导致NVML库无法正常工作。在这种情况下,建议重新安装NVIDIA驱动程序以确保与新内核兼容。
-
损坏的系统文件:如果系统文件被损坏或删除,可能会导致NVML库无法正常工作。在这种情况下,可以尝试重新安装NVIDIA驱动程序以恢复缺失的文件。
所以一般重启一下就恢复了,那多半是系统自动升级了NVIDIA驱动程序.
所以如果重启还没恢复, 总之就是一个方案, 重装NVIDIA驱动就完了!
查看一下已安装内核系统内核: dpkg --get-selections |grep linux-image
查看正在使用的内核 uname -a
鉴定为Ubuntu默认内核自动更新,导致与NVIDIA驱动程序不兼容.
所以重新安装NVIDIA驱动程序, 如果想一劳永逸的解决的话建议禁止内核自动更新.https://blog.csdn.net/inthat/article/details/125316389
重新安装NVIDIA驱动程序:
-
官网上下载所需驱动https://www.nvidia.cn/Download/index.aspx?lang=cn
-
禁用图形界面
sudo service gdm3 stop
-
安装下载的驱动
sudo ./NVIDIA-Linux-x86_64-525.60.11.run
, 一路回车 -
检查, 已解决
-
恢复图形界面
sudo service gdm3 restart