centos7/8安装NVIDIA驱动、CUDA记录

2 篇文章 0 订阅
1 篇文章 0 订阅

背景

在一个人脸识别的项目中发现使用cpu进行人脸识别速度很慢,另外cpu占用率很高,所以准备采用gpu做下测试,为了方便后续的部署特做记录。
显卡型号:NVIDIA RTX 3060 12G
操作系统:Centos8.4

1 Centos系统安装

在win10安装centos7方面也是跳了好几个坑(不是双系统,而是win10更换为Centos)。

  1. 安装centos系统前,需要先将磁盘的所有分区删除,之后再开始安装
  2. 使用“软碟通”制作U盘镜像进行安装
  3. 如果使用的是独立显卡记得打开GSM兼容,否则不能安装Centos或者需要很复杂的安装步骤
  4. 华硕跳转到启动页面的快捷键是F8
  5. 如果多方尝试安装界面一直黑屏,可以尝试更换高版本系统,引起此原因的大部分是主板问题。

2YUM源更新

#备份原来的yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#替换yum源
wget https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo -O /etc/yum.repos.d/Centos-vault-8.5.2111.repo
wget https://mirrors.aliyun.com/repo/epel-archive-8.repo -O /etc/yum.repos.d/epel-archive-8.repo
#更新缓存
yum clean all && yum makecache

3NVIDIA驱动安装

3.1下载驱动

官网地址:https://www.nvidia.cn/geforce/drivers/
下载驱动时,不要选择版本最新的,最好选择低2-3个版本的驱动
参考:

驱动版本:
LINUX X64 (AMD64/EM64T) DISPLAY DRIVER
驱动程序版本: 470.1030 - 发行日期: 2022-1-31

安装驱动前先查看系统内核版本和kernel-devel版本是否一致,命令如下

#查看内核版本
uname -r
#查看kernel-devel版本
rpm -aq | grep kernel-devel
#如果不存在则进行安装
yum install "kernel-devel-uname-r == $(uname -r)"

3.2屏蔽默认带有的nouveau

nouveau是一个免费开源的非公版驱动,一般带图形化界面的Linux会附带这个驱动,这个驱动与Nvidia官方驱动会冲突,因此需要屏蔽。
在root用户下屏蔽配制文件中的 blacklist nvidiafb,加上 # 符号用以屏蔽

vim /lib/modprobe.d/dist-blacklist.conf
#blacklist nvidiafb
之后在该文件下方追加两条配置
blacklist nouveau
options nouveau modeset=0

3.3 重建 initramfs image 步骤

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)

3.4 修改运行级别为文本模式

init 3

3.5 重新启动,以root用户登录

reboot

3.6 再次查看nouveau是否已经禁用

ls mod | grep nouveau

3.7 进入下载的驱动所在目录,安装驱动

./NVIDIA-Linux-x86_64-470.103.01.run

安装过程中,选择accept,基本上是一次成功,如果遇到别的错误再具体问题具体解决。

3.8 如果需要回到可视化界面执行

init 5

3.9 核验驱动是否安装成功

nvidia-smi
3.10安装NVIDIA-CONTAINER-RUNTIME
#可以先不下载yum源直接安装试试,如果不行再更新yum源
#distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
#curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.repo | \
#sudo tee /etc/yum.repos.d/nvidia-container-runtime.repo
yum install nvidia-container-runtime

此部分参考文档:
https://blog.csdn.net/qq_38657955/article/details/119989762
https://www.jianshu.com/p/84357d5a116a

4 CUDA安装

需要根据显卡驱动的版本安装对应的cuda版本,具体对照表如下:
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
在这里插入图片描述

4.1 CUDA下载

下载官网:https://developer.nvidia.com/cuda-11.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=CentOS&target_version=8&target_type=runfilelocal

wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run
sudo sh cuda_11.0.2_450.51.05_linux.run

此部分参考链接:https://blog.csdn.net/weixin_41650348/article/details/115110021

4.2配置环境变量

vim /etc/profile
export PATH=$PATH:/usr/local/cuda-11.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/cuda-11.0/lib64
:wq
source /etc/profile

4.3 验证是否安装成功

nvcc -V

此部分参考链接:https://blog.csdn.net/weixin_41650348/article/details/115110021

5 常见问题

docker启动容器报错 Unknown runtime specified nvidia.

修改/etc/docker/daemon.json(需要管理员权限),添加如下的内容:

{
    "registry-mirrors": ["你的加速仓库地址"],
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
         }	
    }
}

然后重启docker就好了:

systemctl daemon-reload
systemctl restart docker

参考链接:https://www.cnblogs.com/luckforefforts/p/13642682.html

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值