CentOS8安装NVIDIA显卡驱动、CUDA和Anaconda
参考:CentOS nvidia+cuda+cudnn 安装
安装英伟达显卡驱动
1、检查是否安装了NVIDIA的GPU(硬件层面):
lspci | grep -i nvidia
2、安装GCC、kernal组件、dkms等
sudo yum install gcc
sudo yum install gcc-c++
sudo yum -y install kernel-devel
sudo yum -y install kernel-headers
sudo yum -y install epel-release
sudo yum -y install dkms
都安装上以防不测。。
centos8上最好保证kernel和kenel-devel、kernel-headers版本一致。
查看系统中所有的kernel版本:
rpm -qa|grep kernel
查看linux发行版本
cat /etc/os-release
查看linux系统版本
uname -a
# Linux skylake 4.18.0-240.15.1.el8_3.x86_64 #1 SMP Mon Mar 1 17:16:16 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
查看kernel组件的信息
yum info kernel-devel kernel-headers
3、下载对应的显卡版本
nvidia官网下载驱动程序。
https://www.nvidia.cn/Download/index.aspx?lang=cn
下载的是后缀名为run的文件NVIDIA-Linux-x86_64-440.118.02.run
。
这里我选择将这个文件先保存到本地,然后再通过ssh(vscode)上传到服务器上。我用的vscode,就直接拖到指定文件夹里就行了,等一会就上传好了。
4、赋予运行权限
chmod a+x NVIDIA-Linux-x86_64-440.118.02.run
5、禁用nouveau
貌似在centos8上默认就禁用了,我没改,直接查看了lsmod | grep nouveau
命令,发现没有输出。没禁用的话可以按照以下步骤改一改。
# 打开配置文件:
vim /usr/lib/modprobe.d/dist-blacklist.conf
# 加上或修改 两行
blacklist nouveau
options nouveau modeset=0
查看nouveau是否禁用, 如果没有输出代表成功
lsmod | grep nouveau
6、安装驱动
中间可能会跳出dkms说要帮你安装,一路yes/y就可以了,warning不用管它,之后就装好了。
sudo ./NVIDIA-Linux-x86_64-440.118.02.run
或
sudo ./NVIDIA-Linux-x86_64-440.118.02.run --kernel-source-path=/usr/src/kernels/4.18.0-240.15.1.el8_3.x86_64
上面成功的话请忽略以下内容!
ERROR:Unable to find the kernel source tree for the currently running kernel
安装驱动时报错。
未解决我的问题,仅供参考:https://blog.csdn.net/chris_pei/article/details/79203033
我的解决:
(1)首先调整kernel和kenel-devel、kernel-headers版本。参考:https://blog.csdn.net/KnYoboy/article/details/104147009
# 查看当前系统内核的版本
uname -r
# 查看所有内核组件的版本
rpm -qa|grep kernel #---发现内核有有2个版本,默认的kernel版本和组件版本不匹配
# 删除不需要的内核
yum remove kernel-不需要的内核(上一步可查看)
# 查看默认的启动内核
grubby --default-kernel # 发现已经是新内核了
# 重启
sudo reboot
经过上面的操作并重启之后,又出现了以下的错误。。
安装了dkms(之前没有安装),问题解决
sudo yum -y install dkms
7、查看显卡是否安装成功。
打印出了显卡信息,证明显卡驱动安装成功。
nvidia-smi
安装CUDA
1、下载对应的CUDA版本
官网:https://developer.nvidia.com/zh-cn/cuda-downloads
注意,官网默认是最新的版本,如果要下载之前的版本,从这里找,见下图
服务器那边网速不好或者不和公网连接的话先保存到本地,再从本地上传到服务器上。
复制网址打开后就能下载了,大约几个G。
下载好之后拖到vscode里面服务器的某文件夹中就行了,上传比较慢需要等待一段时间。
2、获取权限
chmod a+x cuda_10.2.89_440.33.01_linux.run
3、安装CUDA
sudo sh cuda_10.2.89_440.33.01_linux.run
等待一会有一个协议,输入accept
后回车,会让你选择安装的内容。我这里已经安装好了驱动,所以回车取消掉driver的那一项,其他保持不变。往下移动选择install
,回车进行安装。
之后会提醒你需要update
以匹配当前安装好的驱动,回车选择更新,就一路安装好了。
如果有问题可以看看下面的解决方案。
安装时报错
查看日志发现是因为之前安装了驱动,这里又要安装,导致了两个版本的驱动发生了冲突。
解决:如果之前提前安装好了显卡驱动,这里就不要选择安装driver那一项了
注意,这里要回车取消掉Driver这一项。
出现以上的信息,代表CUDA安装的过程中没有出现问题。
4、CUDA导出为环境变量
打开vim进行编辑。
vi ~/.bashrc
增加以下内容:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
修改完成之后退出编辑模式,在尾行模式下保存退出。
:wq
在当前shell中执行,使环境变量生效。
source ~/.bashrc
5、查看是否安装成功
nvcc -V
nvidia-smi
出现以下信息代表成功。可以看出,我安装的是CUDA 10.2。
进一步验证。
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
出现Result = PASS
并成功检测出全部显卡,代表显卡驱动和CUDA安装成功。
安装Anaconda
参考:https://blog.csdn.net/qq_44486439/article/details/107744449
1、下载安装文件
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2020.02-Linux-x86_64.sh
2、安装Anaconda
bash Anaconda3-2020.02-Linux-x86_64.sh
一路回车,然后yes。下面的地方比较关键,让你选择安装路径,这里直接回车选择默认路径:~/anaconda3
。
安装成功。
3、将conda导出为环境变量
sudo vim /etc/profile
在最后添加:
export ANACONDA_PATH=~/anaconda3
export PATH=$PATH:$ANACONDA_PATH/bin
然后强制保存退出。
:wq!
在当前shell中执行生效。
source /etc/profile
4、查看是否成功
which anaconda
conda --version
conda info -e
python
欢迎各位大佬批评指正!