搭建深度学习docker容器(1)- CentOS7安装NVIDIA显卡驱动

前言

随着机器学习越来越热门,我认为有必要搭建一个可以进行深度学习研究的环境进行一探究竟,同时也是好奇心驱使我非常希望能体验一把打开“潘多拉魔盒”的神奇感觉。为了能尽可能方便的实现这样的一个小需求,就必须得拥有一个相对稳定且可以随意尝试和修改的环境中探索各种人工智能模型。

nvidia

问题的思考

在动手开始搞之前,我认为我需要弄明白一些关键问题:

  • 硬件要求深度学习需要大量计算资源,是否需要购买或租赁一台高性能计算机或GPU服务器。

  • 软件环境如何选择适合自己的深度学习框架,并确保其与操作系统和其他软件库兼容。

  • 数据集如何获取适当的数据集以进行训练和测试模型。

  • 学习资源我有没有资源能够接触到这个行业内的专业人士,可以帮助我完成理解深度学习的基本概念和实现方法。

经过一段时间的思考,我最终决定自己搭建虚拟服务器推进AI领域的学习。考虑到初学者需要投入大量时间学习人工智能领域知识,将此时间堆积在云服务器上将是一笔不小的费用。而且,基于我目前对人工智能领域知识的了解程度,使用太多硬件资源也并非必要,尤其是我已经拥有一张正在吸灰尘的3070TI显卡。这使得自行搭建AI服务器成为更加明智的选择。

准备环境搭建

这里先介绍一下我的开发环境:

  • 系统:CentOS7 Linux
  • 显卡:iGame GeForce RTX 3070 Ti Advanced OC 8G

以及我会用到的几个命令:

1
2
3
4
5
6
7
8
# Linux查看显卡信息:(ps:若找不到lspci命令,可以安装 yum install pciutils)
lspci | grep -i vga

# 使用nvidia GPU可以:
lspci | grep -i nvidia

# 查看显卡驱动
cat /proc/driver/nvidia/version

相关依赖安装

  • 安装依赖环境
1
yum install kernel-devel gcc -y
  • 检查内核版本和源码版本,保证一致
1
2
3
ls /boot | grep vmlinu

rpm -aq | grep kernel-devel
  • 屏蔽系统自带的Nouveau
1
2
3
4
5
6
7
8
9
10
11
12
# 查看命令:
lsmod | grep nouveau

# 修改dist-blacklist.conf文件:
vim /lib/modprobe.d/dist-blacklist.conf

# 将nvidiafb注释掉:
blacklist nvidiafb

# 然后添加以下语句:
blacklist nouveau
options nouveau modeset=0

可以在屏蔽之后重启系统并在命令行中输入lsmod | grep nouveau查看命令观察是否已经将其屏蔽。

  • 重建Initramfs Image步骤
1
2
3
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

dracut /boot/initramfs-$(uname -r).img $(uname -r)
  • 修改运行级别为文本模式
1
systemctl set-default multi-user.target
  • 重新启动
1
reboot

显卡驱动安装

1
网址:https://www.nvidia.cn/Download/index.aspx?lang=cn

NVIDIA显卡驱动下载

在这里点击搜索即可弹出对应的下载软件包

Display-Driver

  • 开始安装其软件包
1
2
3
chmod +x NVIDIA-Linux-x86_64-525.105.17.run

./NVIDIA-Linux-x86_64-525.105.17.run
  • 验证是否安装成功
1
nvidia-smi

nvidia-smi

到此CentOS7已完成NVIDIA显卡驱动的安装

如果对您有帮助,请小编喝一杯咖啡吧!