保姆级教程--Ubuntu18.04从零安装nvidia驱动,CUDA,cudnn及nvidia-docker2

环境:Ubuntu18.04裸机

目录

一、安装驱动

Step1.查看可安装驱动版本:一般recommend的都是470 

Step2.禁用原驱动

Step3.安装470驱动 完成后需要再次reboot

Step4.安装完成后,查看显卡信息

二、安装CUDA 

Step1.下载对应版本CUDA 

Step2.安装CUDA

Step3.配置变量

三、cudnn安装 

四、nidia-docker的安装 

Step1.安装docker

Step2.安装nvidia-docker2

Step3.添加容器

Step4.卸载docker 

一、安装驱动

安装方式:使用标准Ubuntu仓库进行自动化安装

Step1.查看可安装驱动版本:一般recommend的都是470 

ubuntu-drivers devices 	

Step2.禁用原驱动

查看原驱动信息,若有信息,则需要禁用

lsmod | grep nouveau	

禁用原驱动

sudo gedit /etc/modprobe.d/blacklist.conf

并在最后一行加上

	blacklist nouveau
	options nouveau modeset=0

生效

sudo update-initramfs -u  

重启

reboot

再次查看信息,若无输出,则禁用成功

lsmod | grep nouveau	

Step3.安装470驱动 完成后需要再次reboot

sudo apt install nvidia-driver-470
reboot

Step4.安装完成后,查看显卡信息

nvidia-smi

二、安装CUDA 

Step1.下载对应版本CUDA 

nvidia-smi的显卡信息表明 应该装CUDA11.4

下载CUDA11.4 本次下载11.4.0

Step2.安装CUDA

 首先安装依赖(20220902 未安装依赖但是也安装成功CUDA 所以这个可选

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

下载run文件

wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run

安装

sudo sh cuda_11.4.0_470.42.01_linux.run

安装选项见下

Step3.配置变量

vim ~/.bashrc

在文件的末尾加入下面三行:

 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64

 export PATH=$PATH:/usr/local/cuda/bin

 export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

生效

source ~/.bashrc

验证是否安装成功 

nvcc -V

三、cudnn安装 

cudnn不需要安装 只需要配置 配置方法参考之前项目的经验 但cudnn的效果暂未得到程序验证

此地址下载这个(注意注册个nvidia账号 本下载需登陆)

解压

tar -xvf cudnn-linux-x86_64-8.5.0.96_cuda11-archive.tar.xz

复制头文件

sudo cp /home/sqy/CUDA/cudnn-linux-x86_64-8.5.0.96_cuda11-archive/include/cudnn*    /usr/local/cuda/include

复制库文件

sudo cp cudnn-linux-x86_64-8.5.0.96_cuda11-archive/lib/libcudnn*    /usr/local/cuda/lib64

改权限:

sudo chmod a+r /usr/local/cuda/include/cudnn*   /usr/local/cuda/lib64/libcudnn*

显示版本

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

四、nidia-docker的安装 

Step1.安装docker

sudo apt-get update
sudo apt-get install -y docker.io  或者snap install docker     # version 19.03.11, or apt  install docker.io
systemctl start docker#启动docker
systemctl enable docker#设置为开机自启动
docker version#查看版本信息

更新

sudo apt-get update

安装docker

sudo apt-get install -y docker.io 

或者(有snap可以尝试下 我的已经被我删掉了) 

snap install docker     # version 19.03.11, or apt  install docker.io

启动docker 

systemctl start docker

设置为开机自启动

systemctl enable docker

查看版本信息

docker version

Step2.安装nvidia-docker2

 添加源

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
sudo curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
sudo curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

更新

sudo apt-get update

安装nvidia-docker2

sudo apt-get install -y nvidia-docker2

重启docker

sudo systemctl restart docker

测试(按系统和cuda版本对此指令进行修改)

sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu18.04 nvidia-smi

查看nvidia-docker2安装情况 

apt show nvidia-docker2

注意:安装完docker后会出现该错误: 

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create?name=first_container: dial unix /var/run/docker.sock: connect: permission denied.

See 'docker run –help'.

 出现该错误的原因是:当前用户未加入用户组

解决方法:

添加docker用户组 

sudo groupadd docker

将当前用户sqy(用户名根据电脑为准)添加至docker用户组  

sudo gpasswd -a sqy docker

更新docker用户组

newgrp docker

Step3.添加容器

 现在可以试着添加nvidia-docker用户了

nvidia-docker run -it --name first_container  nvidia/cuda:11.0.3-base-ubuntu18.04 /bin/bash

Step4.卸载docker 

sudo apt-get remove docker  
sudo apt-get remove --auto-remove docker  
sudo apt remove docker-ce

如果上面方法都不行直接

#使用dpkg查询已安装包,针对性删除
# 查询相关软件包
dpkg -l | grep docker
# 删除这个包
sudo apt remove --purge docker.io
  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值