centors7服務器顯卡驅動安裝

前記:因爲實習公司剛到一批機器,需要配置環境,此前沒有對服務器進行過驅動安裝,一步一步坑走過來,血與淚的教訓,注意,本博客僅適用與centors7顯卡驅動安裝且未裝過任何驅動,若之前已經裝有驅動,請全部卸載重裝,默認你是root權限

查看系統型號:

cat /etc/redhat-release

CentOS Linux release 7.6.1810 (Core)

1.查看顯卡型號

lspci | grep -i nvidia

2.查看顯卡驅動版本

cat /proc/driver/nvidia/version

沒有結果則表示驅動未安裝

3.查看內核版本

uname -r

版本號爲:3.10.0-957.el7.x86_64

########以下過程非必需,跳過######
從ELRepo源安裝顯卡驅動

1.添加ELRepo源
a.首先導入公共密鑰

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

b.然後安裝ELRepo
對於CentOS-7:

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

2.查找合適的驅動
a.安裝顯卡檢查程序

yum install nvidia-detect

b.檢查顯卡驅動信息

nvidia-detect -v

在這裏插入圖片描述
410.78爲需安裝的顯卡版本號,也可以去英偉達官網,下載驅動安裝,因爲這個版本去yum源裏面沒有搜索到,我直接去英偉達官網下載cuda相應的驅動
3.yum搜索驅動:yum search kmod-nvidia-410.78 (不一定會有,我的這個型號就沒有)
3.安裝驅動:yum -y install kmod-nvidia-410.78
xxxx爲檢測出的驅動型號
注意:yum不一定會有對應的驅動,因此這個方法可能不會成功
############以下過程必須###########

4.安裝編譯環境:gcc、kernel-devel、kernel-headers
(1)安裝gcc、g++編譯器

yum install gcc gcc-c++

問題Error: Package: glibc-2.17-196.el7_4.2.i686 (updates) Requires: glibc-common = 2.17-196.e
解決:更換yum源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sed -i  's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base.repo
yum repolist
mv /boot/initramfs-(uname−r).img/boot/initramfs− (uname -r).img
yum install -y "kernel-devel-uname-r == $(uname -r)"

查看是否安裝成功:gcc -v
(2)安裝kernel-devel、kernel-headers

yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)

問題: No package kernel-devel-uname-r == 3.10.0-957.el7.x86_64 available.
解決: 同上更換yum源

5.安裝epel和dkms

yum -y install epel-release
yum --enablerepo=epel install dkms

問題: GPG key retrieval failed: [Errno 14] curl#37 - "Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6"
解決: vim /etc/yum.repos.d/epel.repo
將[epel]下的gpgcheck=1,改爲gpgcheck=0

6.屏蔽默認帶有的nouveau(linux系統自帶的顯卡驅動,不屏蔽的話會產生衝突)
(1)打開/lib/modprobe.d/dist-blacklist.conf(此位置針對本機centors7,ubuntu可能不一樣)
然後添加以下語句:

blacklist nouveau

(2)重建initramfs image步驟

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

(3)重啓reboot,查看nouveau是否被禁用: lsmod | grep nouveau
沒有輸出則表示被禁用

7.安裝驅動:sh NVIDIA-Linux-x86_64-384.145.run --kernel-source-path=/usr/src/kernels/3.10.0-957.el7.x86_64 -k $(uname -r)
(驅動型號去Nvidia官網根據顯卡查看下載,3.10.0-957.el7.x86_64爲內核版本)

可能的問題:
1.報錯:ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding.
解決辦法:nouveau未禁用,禁用後重啓

2.問題:ERROR: Unable to load the kernel module 'nvidia.ko'
解決辦法:sh NVIDIA-Linux-x86_64-384.145.run --kernel-source-path=/usr/src/kernels/3.10.0-957.el7.x86_64 -k $(uname -r)
注意要添加kernel-source-path

3.安裝到最後一步出現:Unable to load the ‘navidia-drm’ kernel module
解決辦法:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
8.查看驅動是否成功安裝
出現以下界面,且nvidia-smi成功顯示則表明成功安裝(可能需要重啓)
在這裏插入圖片描述

參考文獻:
https://blog.csdn.net/j790675692/article/details/78133551
https://www.jianshu.com/p/e2aab8e38cac
https://blog.csdn.net/ksws0292756/article/details/79160742
http://linux.it.net.cn/CentOS/course/2016/0725/24163.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章