当前位置: 首页 > news >正文

问题解决 | Failed to initialize NVML: Driver/library version mismatch

问题描述:

Ubuntu20.04服务器上,一个docker容器正在训练模型,打开另外一个docker容器时,出现以下错误

Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #1: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: initialization error: nvml error: driver/library version mismatch: unknown
Error: failed to start containers: tf来自守护进程的错误响应:创建shim任务失败: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #1: error running hook: exit status 1, stdout: , stderr: 自动检测模式为'legacy'。
nvidia-container-cli:初始化错误:nvml错误:驱动程序/库版本不匹配:未知错误:启动容器失败:tf(docker容器名称)

 然后去查看驱动时,出现Failed to initialize NVML: Driver/library version mismatch初始化NVML失败: 驱动程序/库的版本不匹配

问题分析

 综合描述,是因为驱动问题,可能是NVIDIA 内核驱动版本与系统驱动不一致。

系统自动升级过显卡驱动,在显卡驱动支持的系统内核版本相同的情况下,某些应用占用显卡,导致无法更新驱动的内核模块,进而无法使用。

查看

nvcc -V

 

 

查看显卡驱动所使用的内核版本

cat /proc/driver/nvidia/version

 内核版本是470.161.03,系统内核是Ubuntu 7.5.0

 查看系统驱动日志

cat /var/log/dpkg.log | grep nvidia

 曾经安装过系统内核 20.04 的 470.182.03 的驱动

查看驱动程序

sudo dpkg --list | grep nvidia-*

 

 我的情况是安装了很多的nvidia和cuda版本

解决方案:

方法①:重新启动服务器

sudo reboot

 20230418号,重启后就不会出现问题啦~

方法②:卸载驱动重新安装

卸载驱动

sudo /usr/bin/nvidia-uninstall
sudo apt-get --purge remove nvidia-*
sudo apt-get purge nvidia*
sudo apt-get purge libnvidia*

直到命令不输出任何内容

sudo dpkg --list | grep nvidia-*

重新安装

sudo chmod a+x NVIDIA-Linux-x86_64-470.161.03.run
sudo ./NVIDIA-Linux-x86_64-470.161.03.run -no-x-check -no-nouveau-check -no-opengl-files

***注意:这里的版本号需要换成刚才查询的内核版本驱动

参数:

–no-opengl-files 只安装驱动文件,不安装OpenGL文件

–no-x-check 安装驱动时不检查X服务

–no-nouveau-check 安装驱动时不检查nouveau

其他

为防止再次出现这样的问题,可以禁用当前版本的本地更新,命令如下:

sudo apt-mark hold nvidia-driver-470

参考文献

【1】Failed to initialize NVML: Driver/library version mismatch_HaMiHaMi Ha的博客-CSDN博客

http://www.lryc.cn/news/62675.html

相关文章:

  • ThinkPHP模型操作上
  • 053:cesium显示网格切片标识,展示X、Y、Level 坐标
  • FPGA基于XDMA实现PCIE X8视频采集HDMI输出 提供工程源码和QT上位机程序和技术支持
  • 简单的redis master slave 配置
  • MySQL高级第十七篇:数据库主从复制原理及保证数据一致性
  • PM不想做项目管理了,还能干点啥?
  • Java面试被问Spring哑口无言?100道Spring面试考点解析
  • 2023年制造业产品经理NPDP认证报名找弘博创新
  • Linux基础命令和基础知识总结
  • Vue组件-非单文本组件
  • 停车场管理系统的设计与实现_kaic
  • seleniumUI自动化登录失败案例重新尝试WhileTrue
  • 前端开发之vue动态路由实现方案
  • JAVA接口的基本测试------JAVA入门基础教程
  • SLAM论文速递:SLAM—— 面向动态环境的多用途SLAM框架—4.25(1)
  • Dubbo 简易环境搭建以及使用(2)
  • 免费无需魔法会语音聊天的ChatGPT
  • springboot 参数统一处理
  • 成就更强大的自己
  • android 富文本编辑器有哪些
  • flex布局属性详解
  • 上传了ipa但iTunes Connect没有构建版本问题
  • 记录一次armbian系统搭建路由功能的失败过程
  • OpenGL与Metal API的Point Sprite
  • 从0搭建Vue3组件库(七):使用 gulp 打包组件库并实现按需加载
  • Python入门教程+项目实战-11.4节: 元组与列表的区别
  • 如何做好采购计划和库存管理?
  • 客户管理系统的作用有哪些?
  • Sqlmap手册—史上最全
  • 《花雕学AI》13:早出对策,积极应对ChatGPT带来的一系列风险和挑战