文章目录
- 报错
- 原因分析
- 解决办法
- 防患于未然
报错
- 执行nvidia-smi报错
NVIDIA-SMI has failed because it couldn"t communicate with the NVIDIA driver .
Make sure that the atest NVIDIA driver is installed and running.
- 运行使用gpu的docker容器时
NVIDIA Docker - initialization error: nvml error: driver not loaded
原因分析
- 大概率是因为重启后内核升级了 (起码我的问题是因为这样)。
- 驱动文件被删除
解决办法
- 查看显卡连接是否正常
$ sudo lshw -C display
应该会输出
- 查看已安装内核
$ dpkg --get-selections |grep linux-image
- 查看在使用内核
$ uname -a
如果本地有多核内核大概可能是因为内核升级导致驱动无法识别
- 查看本地之前安装的驱动版本
$ ls /usr/src | grep nvidia
输出:nvidia-515.105.01 (记住:515.105.01 这个版本号)
5… 此时只需要执行
$ sudo apt-get install dkms
$ sudo dkms install -m nvidia -v 515.105.01(515.105.01表示的是驱动版本号,上面查到的)
- 此时应该是解决了此问题
$ nvidia-smi
可以看到gpu的列表
防患于未然
1)命令行关闭系统自动更新,使用命令打开文件并编辑
$ sudo gedit /etc/apt/apt.conf.d/10periodic
将双引号中的“1”全部置“0”即可,修改后保存。