安装NVIDIA driver 510.47.03 cuda11.6 cudnn 经常安装的时候会遇到奇奇怪怪的问题,所以记录下来。
1. 安装NVIDIA driver 510.47.03。如下命令:
安装NVIDIA driver 510.47.03之前,先查看下安装NVIDIA driver 的版本是否是510.47.03,如果不是,要先卸载,然后再安装。例如 如果通过 nvidia-smi 命令,查看,发现版本为NVIDIA Driver Version: 470.94,则需卸载重新安装。
下载好安装包NVIDIA-Linux-x86_64-510.47.03.run后,执行如下命令
chmod 755 NVIDIA-Linux-x86_64-510.47.03.run
sudo ./NVIDIA-Linux-x86_64-510.47.03.run
上述第二条命令执行过程中,有一条是否自动更新和重启的提示时,选择【no】
如果提示报An alternate method of installing the NVIDIA driver was detected… …,点击Continue installation后,报ERROR:The Nouveau kernel driver is currently in use by ypur system.导致无法安装成功。则需禁用Nouveau驱动。方法如下:
① 打开terminal, 输入如下命令:
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
② 在文件最后添加
blacklist nouveau
options nouveau modeset=0
③ 更新initramfs使其生效
sudo update-initramfs -u
④ 重启机器
reboot
⑤ 终端输入语句验证是否禁用成功
lsmod | grep nouveau 或 lspci | grep nouveau
若没有结果输出,则表示禁用成功。
另,如果输入sudo ./NVIDIA-Linux-x86_64-510.47.03.run时,报错报错【ERROR: You appear to be running an X server; please exit X before installing… …】解决办法:
远程桌面打开终端,在sudo root权限下,执行
service lightdm stop # 此命令貌似把界面窗口关掉了
然后通过MobaXterm远程依次输入命令
chmod 755 NVIDIA-Linux-x86_64-510.47.03.run
sudo ./NVIDIA-Linux-x86_64-510.47.03.run
就可以安装成功。安装过程中,切记涉及选择是否自动更新的时候要选择【No】
另,如果输入sudo ./NVIDIA-Linux-x86_64-510.47.03.run时,报错报错【ERROR: An NVIDIA kernel module ‘nvidia-uvm’ appears to already be loaded in your kernel. This… …】解决办法:
因为你卸载完没有重启机器,重启一下机器就好了。
另,(先往下执行,如果后面报同样问题,再回来看,之前一直同样方式没报过问题)后面不知道为什么,装cudnn的时候怎么都装不上,主要是在运行命令sudo apt-get update出现一堆如“暂时不能解析域名’nvidia.github.io’… …和无法下载… …” 的问题。 解决此问题,过程记录如下
采用更换ubuntu的源为阿里源如下:
cd /etc/apt
cp sources.list sources.list.bak
vim sources.list
复制阿里源的相关网址路径进去
sudo apt update
结果还是有类似“暂时不能解析域名‘mirrors.aliyun.com’... ...的问题”于是如下操作:
cd /etc/
vim resolv.conf
在里面增加如下内容
nameserver 8.8.8.8
nameserver 114.114.114.114
然后退出,ping通www.baidu.com之后,执行sudo apt update,结果:
【
正在读取软件包列表... 完成
W: 目标 Packages (Packages) 在 /etc/apt/sources.list.d/nvidia-container-runtime.list:1 和 /etc/apt/sources.list.d/nvidia-docker.list:1 中被配置了多次
... ...此处都是警告,不知道会不会有影响
】就是报了一堆警告,可以先不用管他直接往下安装,如果有问题的话,就找到对应的文件把配置了多次的那个代码找到然后注释掉就可以了。
经验:显卡常由于内核自动更新无法使用,故需关闭显卡内核的自动更新
vi /etc/apt/apt.conf.d/10periodic
vi /etc/apt/apt.conf.d/20auto-apgrades
将上述命令里面的参数值都改成0即可。
卸载NVIDIA驱动的方法
方法一
sudo bash NVIDIA-Linux-x86_64-510.47.03.run -uninstall
方法二
sudo apt-get --purge remove nvidia*
sudo apt autoremove
卸载完成之后,记得重启机器再安装,然后再如下命令安装
sudo ./NVIDIA-Linux-x86_64-510.47.03.run -no-x-check
2. Install CUDA Toolkit 11.6.1 (CUDA 11.6 Update 1)
sudo sh cuda_11.6.1_510.47.03_linux.run --silent --toolkit
添加环境变量
nano ~/.bashrc // nano也可以换成 vim命令
插入如下路径 如下 到环境变量中
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.6/lib64
export PATH=$PATH:/usr/local/cuda-11.6/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-11.6
或(下面这两行比较繁琐,建议插入上面的三行)
export PATH=/usr/local/cuda-11.6/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
然后按Ctrl+X 选择yes 即可退出
再source运行一下
source ~/.bashrc
执行nvcc -V会显示版本如下 说明成功
【
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Thu_Feb_10_18:23:41_PST_2022
Cuda compilation tools, release 11.6, V11.6.112
Build cuda_11.6.r11.6/compiler.30978841_0
】
3 安装cudnn
Run follow commands to install:
运行下列命令安装:
sudo dpkg -i cudnn-local-repo-ubuntu2004-8.4.0.27_1.0-1_amd64.deb
sudo apt-get update
sudo apt install libcudnn8=8.4.0.27-1+cuda11.6
sudo apt install libcudnn8-dev=8.4.0.27-1+cuda11.6
运行第一句命令时报如下问题
The public CUDA GPG key does not appear to be installed.
提示缺少key,安装key,使用下面的命令(To install the key, run this command)
sudo apt-key add /var/cudnn-local-repo-ubuntu2004-8.4.0.27/7fa2af80.pub
运行sudo apt-key add /var/cudnn-local-repo-ubuntu2004-8.4.0.27/7fa2af80.pub即可解决
运行sudo apt-get update时报没有公钥…可以不用管他