环境描述
系统版本:CentOS Linux release 7.4.1708 (Core)
内核版本:3.10.0-693.el7.x86_64
显卡驱动版本: NVIDIA-Linux-x86_64-418.88.run
驱动网站:https://www.nvidia.cn/geforce/drivers/
软件下载:https://cn.download.nvidia.cn/XFree86/Linux-x86_64/418.88/NVIDIA-Linux-x86_64-418.88.run
CentOS 7.4以上的 Linux 系统中安装 NVIDIA 显卡驱动
此文中以 CentOS 7.4 64 bit 为例,
显卡型号为Nvidia GeForce RTX 2080
所有操作在终端以 root 身份运行 。
一、系统环境配置操作(下面所有操作切换到root账号执行)
1、查看服务器信息
[root@zhibang-d-014026 ~]# uname -a
Linux [zhibang-d-014026.hz.td](http://zhibang-p-087155.hz.td/) 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@zhibang-d-014026 ~]# rpm -aq | grep kernel
kernel-tools-3.10.0-693.el7.x86_64
kernel-devel-3.10.0-693.el7.x86_64
kernel-tools-libs-3.10.0-693.el7.x86_64
kernel-headers-3.10.0-693.el7.x86_64
kernel-3.10.0-693.el7.x86_64
[root@zhibang-d-014026 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
2、安装前准备工作
yum clean all
重要:解锁chattr -ai /boot/grub2/grub.cfg
说明:注意系统版本和内核版本
kernel-devel需要和kernel版本一直
uname -r
rpm -aq | grep kernel-devel
[root@zhibang-d-014026 ~]# yum -y list kernel-devel
Loaded plugins: fastestmirror
Bad id for repo: td salt, byte = 2
Loading mirror speeds from cached hostfile
Available Packages
kernel-devel.x86_64 3.10.0-693.el7 centos7.4
[root@zhibang-d-014026 ~]# yum -y install kernel-devel
3、安装相关依赖包
chattr -ai /boot/grub2/grub.cfg
yum -y groupinstall "Development Tools"
yum install -y autoconf automake libtool gcc-c++ gcc
yum install -y libicu libicu-devel bzip2-libs bzip2-devel
4、禁用自带的nouveau驱动
没有禁用自动驱动之前信息如下:
[root@zhibang-d-014026 ~]# lsmod | grep nouveau
nouveau 1622010 0
video 24520 1 nouveau
mxm_wmi 13021 1 nouveau
wmi 19070 2 mxm_wmi,nouveau
drm_kms_helper 159169 2 ast,nouveau
ttm 99345 2 ast,nouveau
drm 370825 5 ast,ttm,drm_kms_helper,nouveau
i2c_algo_bit 13413 3 ast,igb,nouveau
i2c_core 40756 8 ast,drm,igb,i2c_i801,ipmi_ssif,drm_kms_helper,i2c_algo_bit,nouveau
第一步:
修改前的配置
[root@zhibang-d-014026 ~]# cat /etc/default/grub| grep GRUB_CMDLINE_LINUX
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
[root@zhibang-d-014026 ~]#
修改后的配置
[root@zhibang-d-014026 ~]# cat /etc/default/grub| grep GRUB_CMDLINE_LINUX
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet nouveau.modeset=0 rd.driver.blacklist=nouveau"
第二步:加载一下修改后的grub文件
[root@zhibang-d-014026 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-693.21.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.21.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-40605bfd54bd4ea39bc9458e41608be3
Found initrd image: /boot/initramfs-0-rescue-40605bfd54bd4ea39bc9458e41608be3.img
done
![](https://img2020.cnblogs.com/blog/2183860/202012/2183860-20201210230327799-949184224.png)
创建模块配置文件,把不需要的模块blacklist掉
[root@zhibang-d-014026 ~]# cat /etc/modprobe.d/blacklist.conf
blacklist nouveau
第三步:重建initramfs image
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)
--------------------------------------------------------------------以上操作执行完成后,这里执行服务器重启,reboot---------------------------------------------------------------
第四步:重启服务器
重启一下操作系统, 已root账号登陆系统查看nouveau驱动是否还在工作。
#查看nouveau是否已禁用
Lsmod | grep nouveau
查看nouveau是否已经禁用
lsmod | grep nouveau #如果没有显示相关内容,说明被禁用。
二、安装NVIDIA驱动包
wget https://cn.download.nvidia.cn/XFree86/Linux-x86_64/418.88/NVIDIA-Linux-x86_64-418.88.run
chmod 755 NVIDIA-Linux-x86_64-418.88.run
回车
回车
回车
安装完成。
[root@zhibang-d-014016 ~]# nvidia-smi
#!/bin/bash
yum clean all
uname -a
rpm -aq | grep kernel
chattr -ai /boot/grub2/grub.cfg
cat /etc/redhat-release
rpm -aq | grep kernel-devel
yum list -y kernel-devel
yum install -y kernel-devel
yum -y groupinstall "Development Tools"
yum install -y autoconf automake libtool gcc-c++ gcc
yum install -y libicu libicu-devel bzip2-libs bzip2-devel
lsmod | grep nouveau
cat /etc/default/grub| grep GRUB_CMDLINE_LINUX
GrubSum=$(cat /etc/default/grub | grep nouveau | grep -v grep | wc -l)
if [[ $GrubSum -eq 0 ]];then
chattr -ai /boot/grub2/grub.cfg
sed -i 's/crashkernel=auto rhgb quiet/crashkernel=auto rhgb quiet nouveau.modeset=0 rd.driver.blacklist=nouveau/g' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
chattr +ai /boot/grub2/grub.cfg
else
echo "Modify complete"
fi
cat >/etc/modprobe.d/blacklist.conf<<EOF
blacklist nouveau
EOF
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)
sleep 3
cd /tmp
wget https://cn.download.nvidia.cn/XFree86/Linux-x86_64/418.88/NVIDIA-Linux-x86_64-418.88.run
cd /tmp
chmod 755 NVIDIA-Linux-x86_64-418.88.run
reboot
备注说明:Nvidia GeForce RTX 2080 安装时有交换操作,目前需要人工参与。