Linux篇之在Centos环境下搭建Nvidia显卡驱动

一、前提条件
1、首先确认内核版本和发行版本,再确认显卡型号

uname -a
// Linux localhost.localdomain 4.18.0-408.el8.x86_64 #1 SMP Mon Jul 18 17:42:52 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

1.2

cat /etc/redhat-release
// CentOS Stream release 8

1.3
查看Linux服务器上是否有GPU显卡可以使用lspci命令

PCI(Peripheral Component Interconnect,外设部件互连标准),即定义连接外部设备的一个标准;
主板上有很多 PCI 接口,用来连接显卡、网卡、声卡等外部设备,而 lspci 命令就是用来列出所有连接 PCI 接口的外部设备
安装lspci命令

yum install -y pciutils

1.4、Linux查看显卡信息:

lspci | grep -i vga 

1.5、使用nvidia GPU也可以:

lspci | grep -i nvidia
// 01:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2080] (rev a1)

// 我的显卡是: GeForce RTX 2080

根据显卡类型下载驱动
下载驱动url:
https://www.nvidia.cn/Download/index.aspx?lang=cn
在这里插入图片描述
二、部署步骤
1、安装驱动

1.1、进入root 模式

su - root

1.2、进入命令行模式

init 3

2、安装依赖包

yum install -y kernel-devel
yum install gcc
yum install mak
yum install elfutils-libelf-devel
yum install libglvnd-devel pkg-config

注意:如果没有yum镜像源,需要mount镜像源
手动挂载镜像源,可参考我的这篇文章:
https://blog.csdn.net/xu710263124/article/details/134784226?spm=1001.2014.3001.5501
3、禁用自带的驱动项目nouveau
先查看nouveau驱动是否开启

lsmod | grep nouveau

注:默认情况下,Linux机器的nouveau驱动是开启的
执行以下动作关闭默认驱动:
修改dist-blacklist.conf文件

vim /lib/modprobe.d/dist-blacklist.conf
# 注释blacklist nvidiafb 
#blacklist nvidiafb 添加下面两句:
blacklist nouveau
options nouveau modeset=0

4、重建initramfs image
执行如下步骤

#备份一份成bak文件
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
#重启镜像
dracut /boot/initramfs-$(uname -r).img $(uname -r)
#修改运行级别为文本模式
systemctl set-default multi-user.target

5、重启机器

reboot

重启后:
检查nouveau是否开启
在这里插入图片描述
6、执行安装文件
将显卡安装文件的执行权限调至可运行

chmod u+x NVIDIA-Linux-x86_64-515.48.07.run

// 执行安装脚本
// 根据uname -r 输出的信息替换下面

uname -r

在这里插入图片描述

bash ./NVIDIA-Linux-x86_64-515.48.07.run  -no-x-check   -no-nouveau-check   -k $(uname -r)   --kernel-source-path=/usr/src/kernels/3.10.0-1160.el7.x86_64

注:请将上面内容改成你自己的位置,不要直接复制
开始安装
在这里插入图片描述

7、检查安装

nvidia-smi

在这里插入图片描述
至此i,说明Nvidia显卡驱动安装成功~

常见报错:
Using the kernel source path ‘/usr/src/kernels/3.10.0-1160.el7.x86_64’ as specified by the ‘–kernel-source-path’ commandline option.
ERROR: The kernel header file ‘/usr/src/kernels/3.10.0-1160.el7.x86_64/include/linux/kernel.h’ does not exist. The most likely reason for this is that the kernel source path ‘/usr/src/kernels/3.10.0-1160.el7.x86_64’ is incorrect. Please make sure you have installed the kernel source files for your kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the ‘kernel-source’ or ‘kernel-devel’ RPM installed. If you know the correct kernel source files are installed, you may specify the kernel source path with the ‘–kernel-source-path’ command line option.
ERROR: Installation has failed. Please see the file ‘/var/log/nvidia-installer.log’ for details. You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
报错原因:没有安装kernel-devel

yum install -y kernel-devel

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/205510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【S2ST】Direct Speech-to-Speech Translation With Discrete Units

【S2ST】Direct Speech-to-Speech Translation With Discrete Units AbstractIntroductionRelated workModelSpeech-to-unit translation (S2UT) modelMultitask learningUnit-based vocoder ExperimentsDataSystem setupBaselineASRMTTTSS2TTransformer Translatotron Evaluat…

Python Jinja2 库的无限可能性

更多资料获取 📚 个人网站:ipengtao.com Jinja2,作为Python中最流行的模板引擎之一,为开发者提供了强大的工具,用于在Web应用和其他项目中生成动态内容。本文将深入研究 Jinja2 库的各个方面,提供更丰富的…

SQL CREATE INDEX 语句- 提高数据库检索效率的关键步骤

SQL CREATE INDEX 语句 SQL CREATE INDEX 语句用于在表中创建索引。 索引用于比其他方式更快地从数据库中检索数据。用户无法看到索引,它们只是用于加速搜索/查询。 注意: 使用索引更新表比不使用索引更新表需要更多的时间(因为索引也需要…

数据科学:Matplotlib、Seaborn笔记

数据科学:Numpy、Pandas 数据科学:Matplotlib、Seaborn笔记 数据科学:Numpy、Pandas、Matplotlib、Seaborn、Scipy、Scikit-Learn 三、Matplotlib1.Matplotlib subplots函数2.tight_layout()函数3.Matplotlib grid()设置网格格式4.fill_bet…

<蓝桥杯软件赛>零基础备赛20周--第9周--前缀和与差分

报名明年4月蓝桥杯软件赛的同学们,如果你是大一零基础,目前懵懂中,不知该怎么办,可以看看本博客系列:备赛20周合集 20周的完整安排请点击:20周计划 每周发1个博客,共20周(读者可以按…

大屏可视化基础学习-通用可套用模板【大屏可视化项目案例-15】

🎉🎊🎉 你的技术旅程将在这里启航! 🚀🚀 本专栏包括但不限于大屏可视化、图表可视化等等。订阅专栏用户在文章底部可下载对应案例源码以供大家深入的学习研究。 🎓 每一个案例都会提供完整代码和详细的讲解,不论你是初学者还是资深开发者,这里都有适合你的内容。…

从零开始的c语言日记day41——自定义类型结构体

一、结构体的声明 1.1结构的基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 Tag结构体标签 Member-list成员列表-里面可以有很多成员 Variable-list变量列表 结构体类型的定义方式 S1,s2是struct stu类型的…

黑苹果之显卡篇

一、什么是显卡 显卡GPU(Video card、Display card、Graphics card、Video adapter)是个人计算机基础的组成部分之一,将计算机系统需要的显示信息进行转换驱动显示器,并向显示器提供逐行或隔行扫描信号,控制显示器的正…

python数据分析

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 pandas统计分析基础实训 实训1 读取并查看某地区房屋销售数据的基本信息1. 训练要点2. 需求说明3.实现思路及步骤 实训2 提取房屋售出时间信息并描述房屋价格信息1. 训练要点…

数据结构 图的广度优先搜索和深度优先搜索

一、广度优先搜索 广度优先搜索等价于树的层次遍历,将起点的每一层进行遍历 当这一层结点全部被遍历完时,再遍历下一层次,从图中可以根据距离遍历起点的长度进行层次选择 例: 以a结点作为开始结点 a的下一层次有b c e三个结点 所以…

nginx 一键切换停机维护页面 —— 筑梦之路

背景说明 进行停机维护或者系统升级等操作,会影响到用户使用,如果停机维护期间用户未看到停机维护的通知,仍去访问系统,会提示默认不太友好的访问错误界面 ,这时如果在维护的时候直接展示停机公告的具体信息&#xff0…

Spark Structured Streaming使用教程

文章目录 1、输入数据源2、输出模式3、sink输出结果4、时间窗口4.1、时间窗口4.2、时间水印(Watermarking) 5、使用例子 Structured Streaming是一个基于Spark SQL引擎的可扩展和容错流处理引擎,Spark SQL引擎将负责增量和连续地运行它&#…

Spring Security 自定义异常失效?从源码分析到解决方案

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…

JAVA 企业面试题

JAVA 企业面试题 面试题集 面试题集共分为以下十部分: 一、 Core Java: 1 — 95 题 1 — 24 页 基础及语法: 1 — 61 题 1 — 13 页 异常: 62 — 69 题 13 — 15 页 集合: 70 — 80 题 15 — 18 页 线程&#xff1a…

使用阿里巴巴同步工具DataX实现Mysql与ElasticSearch(ES)数据同步

一、Linux环境要求 二、准备工作 2.1 Linux安装jdk 2.2 linux安装python 2.3 下载DataX: 三、DataX压缩包导入,解压缩 四、编写同步Job 五、执行Job 六、定时更新 6.1 创建定时任务 6.2 提交定时任务 6.3 查看定时任务 七、增量更新思路 一、Linux环境要…

微信小程序js数组对象根据某个字段排序

一、排序栗子 注: 属性字段需要进行转换,如String类型或者Number类型 //升序排序 首元素(element1)在前 降序则(element1)元素在后 data data.sort((element1, element2) >element1.属性 - element2.属性 ); 二、代码 Page({/*** 页面的初始数据*/data: {user:…

每日一练 | 华为认证真题练习Day144

1、DHCPv6无状态自动分配方案中,主机不需要发送任何DHCPv6报文。 A. 对 B. 错 2、IPv4最后一个选项字段(option)是可变长的可选信息,该字段最大长度为? A. 40B B. 20B C. 60B D. 10B 3、关于ARP协议的作用和报文…

SpringSecurity安全授权

目录 前言 正文 1.基本流程 2.基本用法 3.配置项 4.HttpSecurity 方式和内存认证方式 5.认证流程 6.基于数据库查询的登录验证 7.多种角色权限认证 8.自定义权限认证 总结 前言 安全对于任何系统来说都是非常重要的,权限的分配和管理一直都是开发者需…

C语言——输出菱形

法一&#xff1a; #include<stdio.h> #define N 7 //假设输出7层菱形 int main(){int i;//i控制第几行 int j;//j控制每一行空格的循环个数 int k;//k控制每一行*的循环次数 for(i1;i<4;i){//将图形分为两部分,前四行(第一部分) for(j1;j<4-i;j){//输出第i行的…

echarts双折线图

引用 //反应时长 durationCharts categoryCommonChart(studyBehavior.durationCharts, durationCharts) function categoryCommonChart(odata, dom){var myChart echarts.init(document.getElementById(dom));let oarr []oarr odata.series.map(function(item){let color…