文章目录
- ⚙️前提
-
- 🚗安装必要工具
- [🚗禁用 nouveau 开源驱动](#🚗禁用 nouveau 开源驱动)
- [⚙️NVIDIA 显卡驱动安装](#⚙️NVIDIA 显卡驱动安装)
- ⚙️下载驱动对应版本CUDA(看情况安装)
- ⚙️AI支持
⚙️前提
🚗安装必要工具
bash
dnf install -y dnf-utils dnf-plugins-core kernel-devel kernel-headers gcc make
注意:需保证
kernel-devel版本与当前运行内核完全一致。若版本不匹配,请先执行dnf update kernel -y并重启系统。
🚗禁用 nouveau 开源驱动
系统默认的 nouveau 开源驱动会与 NVIDIA 官方驱动冲突,必须提前禁用:
bash
# 写入黑名单配置
echo "blacklist nouveau" | tee /etc/modprobe.d/blacklist-nouveau.conf
echo "options nouveau modeset=0" | tee -a /etc/modprobe.d/blacklist-nouveau.conf
# 内核启动参数添加 nomodeset,避免启动阶段加载驱动
grubby --update-kernel=ALL --args="nomodeset"
# 重建内核镜像,使黑名单生效
dracut -f -v
# 重启系统
reboot
重启后验证是否禁用成功,无输出即为生效:
bash
lsmod | grep nouveau
⚙️NVIDIA 显卡驱动安装
🚗在线安装显卡驱动
bash
# 添加 NVIDIA CUDA 官方源
dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo
# 启用系统依赖仓库RHEL 8 系:
dnf config-manager --set-enabled powertools
# RHEL 9 系:该仓库已更名为 CRB,执行
dnf config-manager --set-enabled crb
# 安装驱动并重启
dnf install -y nvidia-driver nvidia-settings nvidia-driver-cuda
reboot
🚗离线安装显卡驱动
找到NVIDIA驱动下载官网https://www.nvidia.cn/drivers/
搜索对应版本驱动

下载对应版本

安装驱动
启用 PowerTools 仓库
bash
sudo dnf config-manager --set-enabled PowerTools
使用dnf安装下载的驱动包
bash
dnf -y install nvidia-driver-local-repo-rhel8-595.58.03-1.0-1.x86_64.rpm
安装NVIDIA驱动控制软件和cuda管理工具
bash
# 安装本地源配置
dnf -y install ./nvidia-driver-local-repo-rhel8-595.58.03-1.0-1.x86_64.rpm
# 刷新缓存
dnf clean all
# 安装驱动
dnf install -y nvidia-driver nvidia-settings nvidia-driver-cuda
# 重启加载内核模块
reboot
查看能使用的cuda版本,发现是CUDA Version: 13.2
bash
[root@localhost ~]# nvidia-smi
Thu Jul 16 16:30:47 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 595.71.05 Driver Version: 595.71.05 CUDA Version: 13.2 |
+-----------------------------------------+------------------------+----------------------+
| 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 L20 Off | 00000000:E1:00.0 Off | 0 |
| N/A 30C P8 26W / 350W | 0MiB / 46068MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+
⚙️下载驱动对应版本CUDA(看情况安装)
重要说明:
nvidia-smi中显示的CUDA Version是驱动支持的最高 CUDA 版本,并非必须安装的版本。驱动向下兼容低版本 CUDA,可根据业务需求选择对应版本,无需严格对齐。
🚗离线安装
最新版本下载:https://developer.nvidia.com/cuda-downloads
所有版本下载:https://developer.nvidia.com/cuda-toolkit-archive

这里根据下载的版本去安装,我这里是AnolisOS8
bash
wget https://developer.download.nvidia.com/compute/cuda/13.2.1/local_installers/cuda-repo-rhel8-13-2-local-13.2.1_595.58.03-1.x86_64.rpm
sudo rpm -i cuda-repo-rhel8-13-2-local-13.2.1_595.58.03-1.x86_64.rpm
sudo dnf clean all
sudo dnf -y install cuda-toolkit-13-2
# 配置系统级环境变量,对所有用户、服务均生效:
tee /etc/profile.d/cuda.sh << 'EOF'
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
EOF
# 立即生效
source /etc/profile.d/cuda.sh
# 验证驱动
nvidia-smi
# 验证 CUDA
nvcc --version
注意:CUDA Toolkit 为纯用户态开发工具链,不涉及内核模块,安装后无需重建 initramfs、无需重启系统。
⚙️AI支持
🚗容器支持
NVIDIA Container Toolkit 安装配置
用于让 Docker / Containerd 容器能够调用宿主机 GPU 资源。
bash
#官方源
curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo | tee /etc/yum.repos.d/nvidia-container-toolkit.repo
# 下载官方源文件并批量替换为中科大地址
curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo | \
sed 's#nvidia.github.io/libnvidia-container#mirrors.ustc.edu.cn/libnvidia-container#g' | \
sed 's#https://nvidia.github.io/libnvidia-container/gpgkey#https://mirrors.ustc.edu.cn/libnvidia-container/gpgkey#g' | \
tee /etc/yum.repos.d/nvidia-container-toolkit.repo
# 安装工具包
dnf install -y nvidia-container-toolkit
🚗配置容器运行时
Docker 场景
bash
# 安装Docker
sudo yum clean all
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's|https://download.docker.com|https://mirrors.tuna.tsinghua.edu.cn/docker-ce|g' /etc/yum.repos.d/docker-ce.repo
sudo yum clean packages
sudo yum install -y docker-ce
sudo systemctl enable --now docker
# 修改Docker镜像源
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.xuanyuan.me"
]
}
EOF
# 重启docker服务
systemctl daemon-reload && systemctl restart docker
# 自动写入 Docker 运行时配置
nvidia-ctk runtime configure --runtime=docker
# 重启 Docker 生效
systemctl restart docker
Containerd 场景(K8s 常用)
bash
nvidia-ctk runtime configure --runtime=containerd
systemctl restart containerd
4.4 验证容器 GPU 调用
bash
# Docker 验证示例
docker run --rm --gpus all nvidia/cuda:12.2.0-base-ubuntu22.04 nvidia-smi