os: centos 6.9
显卡 :1080 TI
cuda :cuda-10.0
cudnn:cuDNN v 7.3.1
CentOS 6.9安装NVIDIA GTX1080显卡驱动,直接说安装步骤和遇到的问题:
一、安装驱动
1:首先当然是要把驱动下载下来啦。我的电脑是NVIDIA的,所以自然先要访问其官网:http://www.geforce.cn/drivers 根据你自己的显卡型号,选择相应的显卡,进行下载勒,下载下来的是一个.run 的文件。
2:OK,接下来就是安装编译环境:gcc、kernel-devel、kernel-headers (当然,如果你的电脑已经安装了,自然就不用在装了)
1 # yum -y install gcc kernel-devel "kernel-devel-uname-r == $(uname -r)" dkms
"kernel-devel-uname-r == $(uname -r)"可以确保安装与当前运行内核版本一样的kernel-header
3:修改/etc/modprobe.d/blacklist.conf 文件,以阻止 nouveau 模块的加载
方法: 添加blacklist nouveau,注释掉blacklist nvidiafb(如果存在)
blacklist.conf不存在时,执行下面的脚本
# echo -e "blacklist nouveau\noptions nouveau modeset=0" > /etc/modprobe.d/blacklist.conf
4:重新建立initramfs image文件
# mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
# dracut /boot/initramfs-$(uname -r).img $(uname -r)
5:执行以下安装脚本
sudo chmod a+x NVIDIA-Linux-x86_64-375.39.run 变为可执行文件
./NVIDIA-Linux-x86_64-375.39.run --kernel-source-path=/usr/src/kernels/3.10.0-514.el7.x86_64 -k $(uname -r) --dkms -s
遇到问题:
You appear to be running an X server; please exit X before installing. For further details, please see the section INSTALLING THE NVIDIA DRIVER in the README available on the Linux driver download page at www.nvidia.com.
sudo init 3 注意空格 会做掉x
rm /tmp/.X*
上面的命令是删掉X 的锁文件
再次cd 到.run文件所在目录
再次执行 sudo ./.run文件
遇到的问题:
ERROR: Unable to load the kernel module 'nvidia.ko'.
原因是内核默认开启了nouveau模块,如果没有执行第三步会报该错误
Unable to load the 'nvidia-drm' module
没有安装dkms模块导致
Your kernel headers for kernel 3.10.0-229.el7.x86_64 cannot be found
原因是找不到与内核匹配的kernel-header库文件,执行
yum install -y "kernel-devel-uname-r == $(uname -r)" 即可
其他注意事项:
--dkms 可以将Nvidia模块编译进内核默认加载模块,以后升级内核时不需要重新重新安装驱动
-s 选项是silence模式安装,去掉-s是交互式模式安装
二、安装 cuda
安装CUDA10.0(下面的方法摘抄自网上,实际安装的是cuda-10.0)
1、在这里下载 CUDA最新版本, 这里下载的是runfile local版本,因为可以选择不安装驱动(前面已经安装过);
给runfile( cuda_8.0.61_375.26_linux.run )添加执行权限并执行安装:
cd ~/Download/
sudo chmod +x cuda_8.0.61_375.26_linux.run
sudo sh cuda_8.0.61_375.26_linux.run
总是出现:
Extraction failed.
Ensure there is enough space in /tmp
Signal caught, cleaning up
解决方法:
sudo mkdir /home/tmp
sudo chmod 1777 /home/tmp
sudo sh cuda_8.0.44_linux.run --tmpdir=/home/tmp/
根据命令行提示进行安装:
-
按`q`退出条款浏览或者按`空格`直到条款末尾,输入 accept 接受条款;
-
输入n不安装nvidia图像驱动,前面已经安装好驱动;
-
输入y安装cuda 8.0 toolkit;
-
回车确认cuda默认安装路径(/usr/local/cuda-8.0);
-
输入y安装CUDA 8.0 Samples;
-
输入CUDA 8.0 Samples安装路径:/home/用户名/CUDA/samples(选择你喜欢的目录进行安装)。
2、设置环境变量
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
CentOS 添加环境变量的三种方法https://blog.csdn.net/huangfei711/article/details/53044539
选择第三种方法
三、安装cuDNN(下面的方法摘抄自网上,实际安装的是cuda-10.0配套版本)
cuDNN6.0和CUDA8.0最佳拍档,所以在NVIDIA官网上下载,找到cudnn的下载页面: https://developer.nvidia.com/rdp/cudnn-download ,选择"Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0" 中的 "cuDNN v6.0 Library for Linux":(这里选择的是和cuda-10.0 配套的cudnn)
下载后安装非常简单,就是解压然后拷贝到相应的系统CUDA路径下
把cudnn-8.0-linux-x64-v6.0.tgz 拷贝到/usr/local/cuda一下命令
sudo cp cudnn-8.0-linux-x64-v6.0.tgz /usr/local/cuda
注意最后一行拷贝时 "-d"不能少, 否则会提示.so不是symbol link:
tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -d