linux安装NVIDIA驱动
前言:官网教程最权威。先不要按网上乱七八糟的教程乱搞一气,先按照官网的提示操作安装一遍,如果有问题再根据问题解决。
我采用的平台:
Linux: CentOS Linux release 7.6.1810 (Core)
显卡:NVIDIA Corporation GP102GL [Tesla P40] (rev a1)
首先官网下载驱动:https://www.nvidia.cn/Download/index.aspx?lang=cn
查看系统驱动版本:
查看显卡信息:若没有此命令,通过yum install pciutils -y安装
lspci | grep -i vga
查看NVIDIA GPU型号(信息用来下载对应驱动):
lspci | grep -i nvidia
按照官网的指示,别的教程与官网的安装方式有差异,一般都会出错。根据提示依次执行以下命令:
rpm -i 你下载的驱动文件
yum clean all
yum install cuda-drivers
reboot【重启才会生效】
问题解决【如果上述步骤安装完后没有问题,以下内容可直接忽略】:
1、第三方驱动禁用问题,【参考:https://blog.****.net/cmzsteven/article/details/49049327】
1)在配置文件中禁用nouveau
2)vi /etc/modprobe.d/blacklist.conf 添加:blacklist nouveau
CentOS 7:
vim /usr/lib/modprobe.d/dist-blacklist.conf
或
vim /lib/modprobe.d/dist-blacklist.conf
并且在加上blacklist nouveau之后还要加上一行options nouveau modeset=0
3)reboot重启,lsmod | grep nouveau # 没输出代表禁用生效
2、nvidia-smi,提示:Failed to initialize NVML: Driver/library version mismatch
【参考:https://stackoverflow.com/questions/43022843/nvidia-nvml-driver-library-version-mismatch】
lsmod | grep nvidia # 查看那些驱动被加载
可能会出现以下结果:
先卸载掉:
sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia_uvm
然后再卸载NVIDIA:
sudo rmmod nvidia
如果出现:rmmod: ERROR: Module nvidia is in use
sudo lsof /dev/nvidia*
测试确认:
lsmod | grep nvidia
然后:nvidia-smi ,成功。
3、tensorflow CUDA cudnn 版本对应关系
【参考:https://blog.****.net/yuejisuo1948/article/details/81043962
https://www.tensorflow.org/install/source】
【欢迎关注个人小站:lichangsong.win】