CentOS 7 安装 NVIDIA GPU 12.6 驱动全流程指南与避坑实践

1次阅读
没有评论

共计 2035 个字符,预计需要花费 6 分钟才能阅读完成。

image.webp

技术背景

在深度学习或 GPU 加速计算场景中,NVIDIA 驱动版本必须与 CUDA Toolkit 严格匹配。12.6 驱动对应 CUDA 11.x 系列,若版本错配会导致编译失败或性能异常。CentOS 7 默认使用 3.10 内核,需特别注意 kernel-devel 包版本的一致性。

CentOS 7 安装 NVIDIA GPU 12.6 驱动全流程指南与避坑实践

前置检查

  1. 确认 GPU 型号:

    lspci | grep -i nvidia

    预期输出示例:

    01:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2080] (rev a1)

  2. 检查内核版本:

    uname -r

    输出应类似3.10.0-1160.el7.x86_64,需记录完整版本号用于后续安装 kernel-devel。

分步骤操作指南

1. 禁用 Nouveau 驱动

  • 创建黑名单配置文件:

    echo "blacklist nouveau" | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
    echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/blacklist-nouveau.conf

  • 重建 initramfs:

    sudo dracut --force

  • 重启后验证:

    lsmod | grep nouveau

    若无输出则表示禁用成功。

2. 安装内核开发包

sudo yum install -y kernel-devel-$(uname -r) kernel-headers-$(uname -r)

若提示找不到包,需先启用 ELRepo 仓库:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
sudo yum --enablerepo=elrepo-kernel install -y kernel-devel

3. 驱动安装关键步骤

  • 下载官方驱动(需提前在 NVIDIA 官网获取 12.6 版本):

    chmod +x NVIDIA-Linux-x86_64-390.87.run
    sudo ./NVIDIA-Linux-x86_64-390.87.run

  • 安装时建议选择:

    1. 接受 License
    2. 不安装 32 位兼容库(除非特殊需求)3. 启用 DKMS 自动编译模块
    4. 不更新 Xorg 配置(后续手动处理)

验证环节

  1. 基础功能检查:

    nvidia-smi

    正常应显示 GPU 温度、显存占用等信息。

  2. 图形界面验证:

    nvidia-settings

    会弹出显卡控制面板。

避坑指南

1. 解决内核源码错误

若出现Unable to find kernel source,执行:

sudo ln -s /usr/src/kernels/$(uname -r) /usr/src/linux

2. 处理 Secure Boot 问题

在 BIOS 中禁用 Secure Boot,或手动签名驱动模块:

sudo mokutil --disable-validation

3. 多 GPU 初始化顺序

在 /etc/modprobe.d/nvidia.conf 中添加:

options nvidia NVreg_EnablePCIeGen3=1

完整安装脚本示例

#!/bin/bash
# 自动安装 NVIDIA 12.6 驱动脚本
set -e

# 检查 root 权限
if [[$EUID -ne 0]]; then
   echo "请使用 root 用户执行此脚本" 
   exit 1
fi

# 禁用 Nouveau
echo "黑名单配置中..."
echo -e "blacklist nouveau\noptions nouveau modeset=0" > /etc/modprobe.d/blacklist-nouveau.conf
dracut --force

# 安装依赖
yum install -y kernel-devel-$(uname -r) kernel-headers-$(uname -r) gcc make

# 创建内核源码链接(防止找不到)ln -sf /usr/src/kernels/$(uname -r) /usr/src/linux

# 执行驱动安装
chmod +x NVIDIA-Linux-x86_64-390.87.run
./NVIDIA-Linux-x86_64-390.87.run --silent --dkms

# 验证安装
if ! nvidia-smi; then
   echo "安装失败,请检查日志"
   exit 1
fi

echo "驱动安装成功!"

延伸阅读

个人实践心得

在多个生产集群部署过程中,最常遇到的问题是内核头文件版本不匹配。建议在安装前先 yum update 升级所有包,避免兼容性问题。对于长期运行的服务器,推荐使用 DKMS 方案以便内核升级后自动重编译驱动模块。如果遇到 Xorg 崩溃,可尝试 nvidia-xconfig --prime 重新生成配置文件。

正文完
 0
评论(没有评论)