CentOS-Stream-9安装CUDA12.8+570
2026-02-09
运维
00
请注意,本文编写于 54 天前,最后修改于 5 天前,其中某些信息可能已经过时。

目录

1. 更新系统
2. 更新DNF软件包存储库缓存
3. 启用官方CentOS Stream 9 CRB软件包存储库
4. 安装epel-release和epel-next-release软件包
5. 为了使更改生效,更新DNF软件包存储库缓存
6. 安装编译NVIDIA 内核模块所需的构建工具和依赖库
7. 添加官方NVIDIA CUDA软件包存储库
8. 更新DNF软件包存储库缓存
9. 安装工具包cuda12.8和开放内核模块驱动570
10. 为了使更改生效,重启计算机
11.配置环境变量
12.验证安装
对于cuda12.7的解释
官方未发布 CUDA 12.7
显示为 CUDA 12.7 的可能原因
更换工具包和驱动
参考文档:

1. 更新系统

在安装 CUDA 和 NVIDIA 驱动之前,首先需要更新系统,以确保所有软件包都是最新版本

展开代码
sudo dnf update -y

2. 更新DNF软件包存储库缓存

更新软件包存储库缓存,以便 DNF 能够获取最新的软件包信息

展开代码
sudo dnf makecache

3. 启用官方CentOS Stream 9 CRB软件包存储库

启用 CentOS Stream 9 的 CRB(CodeReady Builder)存储库,该存储库包含一些额外的软件包

展开代码
sudo dnf config-manager --set-enabled crb

4. 安装epel-release和epel-next-release软件包

安装 EPEL(Extra Packages for Enterprise Linux)和 EPEL-Next 软件包,这些软件包提供了额外的工具和库

展开代码
sudo dnf install epel-release epel-next-release

需要确认安装、确认GPG密钥,按y

5. 为了使更改生效,更新DNF软件包存储库缓存

展开代码
sudo dnf makecache

重启系统,使得更改全部生效

6. 安装编译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

要确认安装、确认GPG密钥,按y

7. 添加官方NVIDIA CUDA软件包存储库

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

8. 更新DNF软件包存储库缓存

展开代码
sudo dnf clean all sudo dnf makecache

9. 安装工具包cuda12.8和开放内核模块驱动570

展开代码
sudo dnf -y install cuda-toolkit-12-8 sudo dnf module install nvidia-driver:570-open

10. 为了使更改生效,重启计算机

展开代码
sudo reboot

11.配置环境变量

为方便使用 CUDA 工具,配置环境变量:

  • 编辑 ~/.bashrc,添加以下行:

    展开代码
    export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
  • 应用更改:

    展开代码
    source ~/.bashrc

    注意:默认安装路径为 /usr/local/cuda,若为 /usr/local/cuda-12.4,请确认路径(使用 which nvcc)。

12.验证安装

检查CUDA版本

展开代码
nvcc --version

检查GPU状态

展开代码
nvidia-smi

示例:

img

对于cuda12.7的解释

官方未发布 CUDA 12.7

​ 官方应该是跳过了cuda12.7版本的发布,直接将12.6更新为12.8,现在更新到13.0,所以在 NVIDIA 官方网站上无法找到 CUDA 12.7 的下载链接,甚至下载命令相同,只替换版本号也会显示找不到该版本

显示为 CUDA 12.7 的可能原因

对于使用nvidia-smi命令,显示CUDA Version 12.7的问题,可能的原因:

  • GPU 驱动版本支持:某些较新的 NVIDIA GPU 驱动版本可能已经为未来的 CUDA 版本(如 CUDA 12.7)做好了准备。例如,驱动版本 566.36 可能已经包含了对 CUDA 12.7 的支持信息。在这种情况下,nvidia-smi 可能会显示 CUDA 12.7,但实际上系统中并没有安装 CUDA 12.7 的工具包。
  • 环境变量或路径问题:如果系统中存在多个 CUDA 版本,或者环境变量配置不正确,可能会导致系统显示错误的 CUDA 版本。例如,PATH 环境变量可能包含了指向旧版本 CUDA 的路径,而 nvidia-smi 显示的是驱动程序支持的版本。
  • 工具包和驱动不一致:即使安装了 CUDA 12.6,如果 GPU 驱动版本是为 CUDA 12.7 设计的,nvidia-smi 可能会显示 CUDA 12.7。这是因为 nvidia-smi 显示的是驱动程序支持的 CUDA 版本,而不是实际安装的 CUDA 工具包版本。

更换工具包和驱动

  1. 卸载工具包CUDA
展开代码
sudo dnf -y remove cuda-toolkit-12-8
  1. 安装新的工具包CUDA
展开代码
sudo dnf -y install cuda-toolkit-xx-x # 注意要安装的版本
  1. 卸载驱动
展开代码
sudo dnf module remove nvidia-driver:570-open
  1. 重置驱动模块
展开代码
sudo dnf module reset nvidia-driver
  1. 安装新的驱动模块
展开代码
sudo dnf module install nvidia-driver:xxx-open # 确定要安装的版本

参考文档:

CUDA Toolkit 12.6 Update 3 下载 |NVIDIA 开发人员

CentOS Stream 9 上安装 NVIDIA 驱动程序 • 码奋

在 CentOS Stream 9 上安装 NVIDIA 驱动程序

本文作者:zzz

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!