centos-stream-9上安装nvidia驱动和cuda-toolkit

news2025/4/13 0:39:43

这里写目录标题

    • 驱动安装
      • 1. 更新系统
      • 2. NVIDIA GPU安装
        • 检查系统是否安装了 NVIDIA GPU
        • 2.1 首先,使用以下命令更新 DNF 软件包存储库缓存:
        • 2.2 安装编译 NVIDIA 内核模块所需的依赖项和构建工具
        • 2.3 在 CentOS Stream 9 上添加官方 NVIDIA CUDA 软件包存储库
        • 2.4 在 CentOS Stream 9 上安装最新的 NVIDIA GPU 驱动程序
        • 2.5 为了使更改生效,请使用以下命令重新启动计算机:
        • 2.6 测试
    • 2、cuda-toolkit安装
      • 2.1 安装
      • 2.2 环境配置
      • 测试

驱动安装

参考:centos-stream-9-上安装-nvidia-驱动程序

1. 更新系统

首先,确保你的系统是最新的:

sudo dnf update -y

2. NVIDIA GPU安装

检查系统是否安装了 NVIDIA GPU

您可以使用以下命令检查您的计算机是否安装了 NVIDIA GPU:

lspci | egrep 'VGA|3D'

如您所见,我的计算机上安装了 NVIDIA GeForce RTX 3060 GPU。您可能安装了不同的 NVIDIA GPU。

[root@cheng ~]# lspci | egrep 'VGA|3D'
06:00.0 VGA compatible controller: NVIDIA Corporation GA106 [GeForce RTX 3060 Lite Hash Rate] (rev a1)

默认情况下,CentOS Stream 9 上使用开源 Nouveau GPU 驱动程序1,而不是专有 NVIDIA GPU 驱动程序2。安装专有 NVIDIA GPU 驱动程序后,您将看到它们被使用,而不是开源 Nouveau GPU 驱动程序。

lsmod | grep nouveau
lsmod | grep nvidia

[root@cheng ~]# lsmod | grep nouveau
lsmod | grep nvidia
nvidia_drm            143360  0
nvidia_modeset       1421312  1 nvidia_drm
nvidia_uvm           3899392  0
nvidia              70721536  2 nvidia_uvm,nvidia_modeset
video                  77824  1 nvidia_modeset
drm_kms_helper        274432  2 nvidia_drm
drm                   782336  4 drm_kms_helper,nvidia,nvidia_drm
[root@cheng ~]# lsmod | grep nvidia
lsmod | grep nouveau
nvidia_drm            143360  0
nvidia_modeset       1421312  1 nvidia_drm
nvidia_uvm           3899392  0
nvidia              70721536  2 nvidia_uvm,nvidia_modeset
video                  77824  1 nvidia_modeset
drm_kms_helper        274432  2 nvidia_drm
drm                   782336  4 drm_kms_helper,nvidia,nvidia_drm

从 BIOS 禁用安全启动
要使 NVIDIA GPU 驱动程序在 CentOS Stream 9 上运行,如果主板使用 UEFI 固件启动操作系统,则必须从主板的 BIOS 禁用安全启动

在 CentOS Stream 9 上启用 EPEL 存储库
要在 CentOS Stream 9 上安装 NVIDIA GPU 驱动程序,您必须安装所需的构建工具和编译 NVIDIA 内核模块所需的依赖库。其中一些可以在 CentOS Stream 9 EPEL 存储库中找到。


在本节中,我将向您展示如何在 CentOS Stream 9 上启用 EPEL 存储库。

2.1 首先,使用以下命令更新 DNF 软件包存储库缓存:
sudo dnf makecache

使用以下命令启用官方 CentOS Stream 9 CRB 软件包存储库:

sudo dnf config-manager --set-enabled crb

使用以下命令安装 epel-release 和 epel-next-release 软件包:

sudo dnf install epel-release epel-next-release

要确认安装,请按Y,然后按。

要确认 GPG 密钥,请按 Y,然后按 。

应安装 epel-release 和 epel-next-release 软件包,并启用 EPEL 存储库。

为了使更改生效,请使用以下命令更新 DNF 软件包存储库缓存:

sudo dnf makecache
2.2 安装编译 NVIDIA 内核模块所需的依赖项和构建工具

要安装编译 NVIDIA 内核模块所需的构建工具和依赖库,请运行以下命令:

sudo dnf install kernel-headers-$(uname -r) kernel-devel-$(uname -r) tar bzip2 make automake gcc gcc-c++ pciutils elfutils-libelf-devel libglvnd-opengl libglvnd-glx libglvnd-devel acpid pkgconfig dkms

要确认安装,请按Y,然后按。

正在从互联网下载所需的软件包。需要一段时间才能完成。

下载软件包后,系统会要求您确认 CentOS 官方软件包存储库的 GPG 密钥。

要确认 GPG 密钥,请按 Y,然后按 。

要确认 EPEL 存储库的 GPG 密钥,请按 Y,然后按 。

安装应该继续。

至此,编译NVIDIA内核模块所需的依赖库和构建工具就应该安装完毕了。

2.3 在 CentOS Stream 9 上添加官方 NVIDIA CUDA 软件包存储库

要在 CentOS Stream 9 上添加官方 NVIDIA CUDA 软件包存储库,请运行以下命令:

sudo dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel9/$(uname -i)/cuda-rhel9.repo

为了使更改生效,请使用以下命令更新 DNF 软件包存储库缓存:

sudo dnf makecache
2.4 在 CentOS Stream 9 上安装最新的 NVIDIA GPU 驱动程序

要在 CentOS Stream 9 上安装最新版本的 NVIDIA GPU 驱动程序,请运行以下命令:

sudo dnf module install nvidia-driver:latest-dkms

要确认安装,请按Y,然后按。

所有NVIDIA GPU驱动程序包和所需的依赖包都是从互联网上下载的。需要一段时间才能完成。

下载软件包后,系统会要求您确认官方 NVIDIA 软件包存储库的 GPG 密钥。按 Y,然后按 确认 GPG 密钥。

安装应该继续。需要一段时间才能完成。

我在这步执行中报错:

Last metadata expiration check: 0:05:51 ago on Fri 11 Apr 2025 03:30:46 PM CST.
Error: 
 Problem 1: package nvidia-driver-libs-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires egl-wayland(x86-64) >= 1.1.13.1-3, but none of the providers can be installed
  - cannot install the best candidate for the job
  - package egl-wayland-1.1.13.1-3.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
  - package egl-wayland-1.1.19~20250313gitf1fd514-1.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
 Problem 2: package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires nvidia-driver-libs(x86-64) = 3:570.124.06, but none of the providers can be installed
  - package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-glvkspirv.so.570.124.06()(64bit), but none of the providers can be installed
  - package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-gpucomp.so.570.124.06()(64bit), but none of the providers can be installed
  - package nvidia-driver-libs-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires egl-wayland(x86-64) >= 1.1.13.1-3, but none of the providers can be installed
  - cannot install the best candidate for the job
  - package egl-wayland-1.1.13.1-3.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
  - package egl-wayland-1.1.19~20250313gitf1fd514-1.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
 Problem 3: package xorg-x11-nvidia-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-glcore.so.570.124.06()(64bit), but none of the providers can be installed
  - package xorg-x11-nvidia-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-tls.so.570.124.06()(64bit), but none of the providers can be installed
  - package nvidia-xconfig-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires xorg-x11-nvidia(x86-64) >= 3:570.124.06, but none of the providers can be installed
  - package nvidia-driver-libs-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires egl-wayland(x86-64) >= 1.1.13.1-3, but none of the providers can be installed
  - cannot install the best candidate for the job
  - package egl-wayland-1.1.13.1-3.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
  - package egl-wayland-1.1.19~20250313gitf1fd514-1.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
 Problem 4: package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires nvidia-driver-libs(x86-64) = 3:570.124.06, but none of the providers can be installed
  - package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-glvkspirv.so.570.124.06()(64bit), but none of the providers can be installed
  - package nvidia-driver-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires libnvidia-gpucomp.so.570.124.06()(64bit), but none of the providers can be installed
  - package nvidia-settings-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires nvidia-driver(x86-64) = 3:570.124.06, but none of the providers can be installed
  - package nvidia-driver-libs-3:570.124.06-1.el9.x86_64 from cuda-rhel9-x86_64 requires egl-wayland(x86-64) >= 1.1.13.1-3, but none of the providers can be installed
  - cannot install the best candidate for the job
  - package egl-wayland-1.1.13.1-3.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
  - package egl-wayland-1.1.19~20250313gitf1fd514-1.el9.x86_64 from cuda-rhel9-x86_64 is filtered out by modular filtering
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

问了大模型的解决办法都不行,最后发现错误日志最后括号内的提示,改成如下命令就成功了:

sudo dnf module install nvidia-driver:latest-dkms --skip-broken
2.5 为了使更改生效,请使用以下命令重新启动计算机:
sudo reboot

检查 NVIDIA 驱动程序是否安装正确
计算机启动后,您应该会看到使用专有的 NVIDIA GPU 驱动程序1,而不是开源的 Nouveau GPU 驱动程序2。

lsmod | grep nvidia
lsmod | grep nouveau

您还应该在 CentOS Stream 9 的应用程序菜单中找到NVIDIA X Server Settings应用程序。单击它。

NVIDIA X 服务器设置应用程序运行时应该没有任何错误,并且应该显示与您安装的 NVIDIA GPU 相关的大量信息。

2.6 测试

您还应该能够运行 NVIDIA 命令行程序,例如 nvidia-smi

[root@cheng ~]# nvidia-smi

Sun Dec 22 14:37:55 2024       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 565.57.01              Driver Version: 565.57.01      CUDA Version: 12.7     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 3060        Off |   00000000:06:00.0 Off |                  N/A |
| 31%   23C    P8              6W /  170W |      18MiB /  12288MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+

2、cuda-toolkit安装

2.1 安装

参考官网:CUDA Toolkit 12.8 Update 1 Downloads

2.2 环境配置

全局配置,对所有用户生效:

[chenfeng@iZ2ze8ss1mj33afx13mulcZ temp]$ sudo vim /etc/profile
在文件末尾追加:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

然后,重启终端 或 执行 source /etc/profile

测试

nvcc --version

[chenfeng@iZ2ze8ss1mj33afx13mulcZ temp]$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2025 NVIDIA Corporation
Built on Fri_Feb_21_20:23:50_PST_2025
Cuda compilation tools, release 12.8, V12.8.93
Build cuda_12.8.r12.8/compiler.35583870_0

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

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

相关文章

从 MySQL 切换到国产 YashanDB 数据库时,需要在数据库字段和应用连接方面进行适配 ,使用总结

YashanDB | 崖山数据库系统 - 崖山科技官网崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,融入原创理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景&#xff…

【学习笔记】头文件中定义函数出现重复定义报错

目录 错误复现原因解决方案inlinestatic 扩展参考 错误复现 现在有一个头文件 duplicate_define.h 和两个源文件 duplicate_define_1.cpp 和 duplicate_define_2.cpp。 两个源文件都引入了头文件 duplicate_define.h,且在各自的函数中调用了定义在头文件中的全局函…

游戏开发中 C#、Python 和 C++ 的比较

🎬 Verdure陌矣:个人主页 🎉 个人专栏: 《C/C》 | 《转载or娱乐》 🌾 种完麦子往南走, 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️ 摘要: 那么哪种编程语言最适合游戏开发…

DeepSeek 都开源了哪些技术?

DeepSeek作为中国领先的人工智能企业,通过开源策略推动了全球AI技术的普及与创新。以下是其官方公布的主要开源项目及其技术内容、应用场景和社区反馈的详细分析: 1. FlashMLA 技术描述:专为Hopper架构GPU优化的高效MLA(Multi-Layer Attention)解码内核,针对可变长度序列…

P8754 [蓝桥杯 2021 省 AB2] 完全平方数

题目描述 思路 一看就知道考数学,直接看题解试图理解(bushi) 完全平方数的质因子的指数一定为偶数。 所以 对 n 进行质因数分解,若质因子指数为偶数,对结果无影响。若质因子指数为奇数,则在 x 中乘以这个质因子,保证指…

ADGaussian:用于自动驾驶的多模态输入泛化GS方法

25年4月来自香港中文大学和浙大的论文“ADGaussian: Generalizable Gaussian Splatting for Autonomous Driving with Multi-modal Inputs”。 提出 ADGaussian 方法,用于可泛化的街道场景重建。所提出的方法能够从单视图输入实现高质量渲染。与之前主要关注几何细…

0501路由-react-仿低代码平台项目

文章目录 1 react路由1.1 核心库&#xff1a;React Router安装 1.2 基本路由配置路由入口组件定义路由 1.3 导航方式使用 <Link> 组件编程式导航 1.4 动态路由参数定义参数获取参数 1.5 嵌套路由父路由配置子路由占位符 1.6 重定向与404页面重定向404页面 1.7 路由守卫&a…

OpenAI即将上线新一代重磅选手——GPT-4.1

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

【蓝桥杯】赛前练习

1. 排序 import os import sysn=int(input()) data=list(map(int,input().split(" "))) data.sort() for d in data:print(d,end=" ") print() for d in data[::-1]:print(d,end=" ")2. 走迷宫BFS import os import sys from collections import…

Windows 系统下用 VMware 安装 CentOS 7 虚拟机超详细教程(包含VMware和镜像安装包)

前言 资源 一、准备工作 &#xff08;一&#xff09;下载 VMware Workstation &#xff08;二&#xff09;下载 CentOS 7 镜像 二、安装 VMware Workstation&#xff08;比较简单&#xff0c;按下面走即可&#xff09; 三、创建 CentOS 7 虚拟机 四、安装 CentOS 7 系统…

五、用例篇

Bug等级&#xff1a;崩溃、严重、一般、次要 bug的生命周期 面试高频考题&#xff1a;跟开发产生争执怎么办&#xff1f; (1)反思自己&#xff0c;是不是bug描述写的不清楚 (2)站在用户思考问题&#xff0c;反问开发人员&#xff1a;“如果你是用户&#xff0c;你能接受这样…

【QT】学习笔记1

QT概述 Qt是一个1991年由QtCompany开发的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI程序&#xff0c;也可用于开发非GUI程序&#xff0c;比如控制台工具和服务器。Qt是面向对象的框架&#xff0c;使用特殊的代码生成扩展&#xff08;称为元对象编译器&#xff08;…

英伟达开源253B语言模型:Llama-3.1-Nemotron-Ultra-253B-v1 模型情况

Llama-3.1-Nemotron-Ultra-253B-v1 模型情况 1. 模型概述 Llama-3.1-Nemotron-Ultra-253B-v1 是一个基于 Meta Llama-3.1-405B-Instruct 的大型语言模型 (LLM)&#xff0c;专为推理、人类对话偏好和任务&#xff08;如 RAG 和工具调用&#xff09;而优化。该模型支持 128K 令…

质检LIMS系统在半导体制造行业的应用 半导体质量革命的现状

在半导体这个“工业皇冠上的明珠”领域&#xff0c;纳米级的精度要求与质量管控如同硬币的两面。随着芯片制程向3nm、2nm演进&#xff0c;传统质检模式已难以满足海量数据、复杂工艺的质量追溯需求。质检LIMS实验室系统作为质量管理的中枢神经&#xff0c;正在重构半导体制造的…

面向对象高级(1)

文章目录 final认识final关键字修饰类&#xff1a;修饰方法&#xff1a;修饰变量final修饰变量的注意事项 常量 单例类什么是设计模式&#xff1f;单例怎么写?饿汉式单例的特点是什么&#xff1f;单例有啥应用场景&#xff0c;有啥好处&#xff1f;懒汉式单例类。 枚举类认识枚…

HTTP 压力测试工具autocannon(AI)

简介 autocannon 是一款基于 Node.js 的高性能 HTTP 压力测试工具&#xff0c;适用于评估 Web 服务的并发处理能力和性能瓶颈。 一、工具特点 高性能‌&#xff1a;利用 Node.js 异步非阻塞机制模拟高并发请求‌。‌实时监控‌&#xff1a;测试过程中动态展示请求统计和性能…

my2sql工具恢复误删数据

一、下载my2sql my2sql下载地址https://github.com/liuhr/my2sql/blob/master/releases/centOS_release_7.x/my2sql 二、my2sql工具注意事项 1. binlog格式必须为row&#xff0c;且binlog_row_imagefull 原因&#xff1a;binlog_row_image 参数决定了 binlog 中是否记录完整的…

【AGI-Eval行业动态】OpenAI 语音模型三连发,AI 语音进入“声优”时代

前言&#xff1a;OpenAI又双叒叕搞事情了&#xff01;这次他们带着三款全新语音模型强势来袭&#xff0c;直接让 AI 语音界卷出新高度&#xff01;无论是语音识别的精准度、还是根据文字生成音频的脑洞&#xff0c;这三款模型都堪称“神仙打架”。 如果你还在用老掉牙的语音助手…

蓝桥杯嵌入式十四届模拟一(eeprom)

一.LED 先配置LED的八个引脚为GPIO_OutPut&#xff0c;锁存器PD2也是&#xff0c;然后都设置为起始高电平&#xff0c;生成代码时还要去解决引脚冲突问题 二.按键 按键配置&#xff0c;由原理图按键所对引脚要GPIO_Input 生成代码&#xff0c;在文件夹中添加code文件夹&#…

DevOps与功能安全:Perforce ALM通过ISO 26262合规认证,简化安全关键系统开发流程

本文来源perforce.com&#xff0c;由Perforce中国授权合作伙伴、DevSecOps解决方案提供商-龙智翻译整理。 近日&#xff0c;Perforce ALM&#xff08;原Helix ALM&#xff09;通过了国际权威认证机构 TV SD的ISO 26262功能安全流程认证&#xff01;该认证涵盖Perforce ALM解决方…