oracle linux7.9(centos7.9)安装nvidia GPU显卡驱动

一.业务场景

公司服务器配置了nvidia GPU显卡,安装的是oracle linux7.9操作系统,以下是安装GPU显卡驱动的操作。

二.GPU显卡驱动的前安装步骤

1.安装前的依赖软件的安装

复制代码
yum -y install epel-release kernel-devel dkms gcc

备注:利用uname -a 命令查看系统内核版本,安装kernel-devel,dkms时的版本需与之对应一致。如利用yum安装时版本不一致,就挂载本地源的方式进行安装。

安装GPU驱动报unable to find kernel source的问题就是kernel-devel和kernel的软件版本不一致的问题,具体解决思路是

通过uname -r 和rpm -qa | grep kernel进行软件对比,之后进行切换内核

查看当前默认内核

grub2-editenv list

查看已有内核

cat /boot/grub2/grub.cfg |grep menuentry

更换默认启动内核

grub2-set-default 'CentOS (3.10.2.el7.x86_64) 24 (Workstation Edition)'

备份并重新生成grub信息

grub2-mkconfig -o /boot/grub2/grub.cfg

重启系统

reboot

2.禁用默认显卡

修改如下文件

复制代码
vi /etc/default/grub

#在GRUB_CMDLINE_LINUX中添加 rd.driver.blacklist=nouveau nouveau.modeset=0

/etc/default/grub 文本内容如下:

复制代码
# 设定超时时间,默认为5秒
GRUB_TIMEOUT=5
# 获得发行版名称(比如CentOS Linux)
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
# 该项将使用grub-set-default和grub-reboot命令来配置默认启动项
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
# 将会导入到每个启动项
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet rd.driver.blacklist=nouveau nouveau.modeset=0"
GRUB_DISABLE_RECOVERY="true"

3.把驱动加入黑名单中

编辑如下文件

vi /etc/modprobe.d/blacklist.conf 添加如下内容

复制代码
blacklist nouveau

4.使用 dracut重新建立 initramfs image file :

复制代码
* 备份 the initramfs file
$  mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

* 重新建立 the initramfs file
$  dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

5.更新完配置后,重启

复制代码
reboot

6.查看nouveau driver确保没有被加载!

复制代码
lsmod | grep nouveau
#应该返回空

三.安装GPU驱动软件

1.赋予驱动文件执行权限

复制代码
chmod +x NVIDIA-Linux-x86_64-390.87.run
  1. 执行安装

    ./NVIDIA-Linux-x86_64-390.87.run

安装过程中的截图

选择Continus installation

选择Yes

选择OK

成功安装

以上选择基本上都是选择YES或者OK即可,按照提示一步步安装就好了

安装完成后,重启服务器,执行如下命令查看安装情况

复制代码
nvadia-smi

服务器要重启才能执行,我遇到没有重启执行命令,报驱动未安装或者未运行的报错

相关推荐
arvin_xiaoting11 分钟前
#zsh# #Ubuntu# 一键安装zsh、oh-my-zsh、常用插件
linux·ubuntu·elasticsearch
脏脏a21 分钟前
【Linux】Linux工具漫谈:yum 与 vim,高效操作的 “左膀右臂”
linux·运维·服务器
APItesterCris39 分钟前
构建弹性数据管道:利用淘宝商品 API 进行流式数据采集与处理
linux·数据库·windows
艾莉丝努力练剑1 小时前
【C++STL :stack && queue (一) 】STL:stack与queue全解析|深入使用(附高频算法题详解)
linux·开发语言·数据结构·c++·算法
kyle~1 小时前
计算机系统---CPU的进程与线程处理
linux·服务器·c语言·c++·操作系统·计算机系统
NiKo_W1 小时前
Linux 进程通信——基于责任链模式的消息队列
linux·服务器·消息队列·责任链模式·进程通信
云飞云共享云桌面1 小时前
广东某模具制造工厂用一台云服务器供8个研发设计同时用
linux·运维·服务器·网络·自动化·制造
jackletter2 小时前
待补充 五大关系数据库(sqlserver、mysql、oracle、pgsql、sqlite)的列类型:目录
mysql·oracle·sqlserver·sqlite·pgsql·列类型
江公望2 小时前
Ubuntu /usr/include/x86_64-linux-gnu目录的作用浅谈
linux·ubuntu
报错小能手2 小时前
linux学习笔记(31)网络编程——TCP time_wait机制
linux·笔记·学习