NVIDIA 显卡驱动安装完全指南

发布时间:2026/6/11 4:57:20

NVIDIA 显卡驱动安装完全指南 Ubuntu 22.04 视觉开发环境搭建一NVIDIA 显卡驱动安装完全指南摘要本文详细讲解在 Ubuntu 22.04 上安装 NVIDIA 显卡驱动的完整流程包括环境预检、Nouveau 禁用、三种安装方法对比、验证步骤以及常见问题排坑。作为视觉开发环境搭建系列的第一篇这是整个开发链路的基石。适用读者有基础 Linux 操作经验的开发者 | 难度入门 ~ 中级 | 预计阅读时间20 分钟文章目录Ubuntu 22.04 视觉开发环境搭建一NVIDIA 显卡驱动安装完全指南一、前言二、为什么先装驱动三、安装前环境预检与冲突排查3.1 确认显卡型号3.2 检查当前使用的驱动3.3 检查 Secure Boot 状态3.4 检查内核版本3.5 安装编译依赖四、禁用 Nouveau 开源驱动4.1 清除旧的 NVIDIA 驱动残留4.2 将 Nouveau 加入黑名单4.3 更新内核并重启4.4 验证 Nouveau 是否已禁用五、安装 NVIDIA 驱动三种方法任选其一方法一ubuntu-drivers 命令行安装 ⭐ 首选方法二图形界面安装备选方法三NVIDIA 官网 .run 文件手动安装最后手段三种方法对比六、验证驱动安装七、常见问题与排坑指南八、总结参考资料一、前言在 Ubuntu 上搭建视觉开发环境深度学习、计算机视觉、机器人等第一步必须是安装 NVIDIA 显卡驱动。这不仅是流程上的建议更是一条铁律——如果驱动装不好后面的 CUDA、cuDNN、PyTorch、TensorRT 全部无法工作。很多初学者会犯一个错误先装好 CUDA 和 PyTorch最后才来折腾驱动。结果驱动安装失败导致系统崩溃前面几个小时的努力全部白费不得不重装系统。✅ 推荐原则驱动是最脆弱、最容易翻车的环节必须放在最前面。做成了再继续做不成随时可以重装系统代价最小。本系列文章将覆盖 Ubuntu 22.04 视觉开发环境的完整搭建流程篇章内容链接第一篇本文NVIDIA 显卡驱动安装—第二篇CUDA Toolkit 安装与环境配置待更新第三篇cuDNN 安装完全指南待更新第四篇PyTorch GPU 版安装与验证待更新第五篇TensorRT 安装与推理加速待更新本文将涵盖以下内容安装前的环境预检与冲突排查彻底禁用 Nouveau 开源驱动三种驱动安装方法的详细步骤与对比安装验证与常见问题排坑指南 安装适配提醒本文提供的是通用安装流程和示例命令。不同显卡型号如 RTX 3060、RTX 4090、RTX 50 系列、不同 Ubuntu 内核版本需要安装的驱动版本可能完全不同。请务必在执行以下步骤之前通过lspci -nn | grep -i nvidia确认你的显卡型号。通过uname -r确认你的内核版本。将上述信息提供给 AI 助手如 ChatGPT、DeepSeek 等或查阅 NVIDIA 官方文档获取针对你当前设备的最合适驱动版本。下文中出现的535、550、575-open等版本号均为示例请替换为 AI 或官方推荐的实际版本。二、为什么先装驱动在 Ubuntu 上系统默认会加载一个名为Nouveau的开源显卡驱动。它能让你点亮屏幕但性能非常有限而且对于任何需要使用CUDA的开发任务深度学习框架、OpenCV CUDA 加速等Nouveau 完全不兼容并且会和官方驱动产生严重冲突。Nouveau 与 NVIDIA 官方驱动的冲突本质GPU 硬件谁来控制?Nouveau 开源驱动NVIDIA 官方驱动内核模块冲突黑屏/驱动加载失败两个驱动会同时尝试控制同一硬件在系统底层内核模块“打架”导致未能创建内核的报错甚至引发系统黑屏无法启动。 特殊提醒对于 Ubuntu 22.04如果使用的是RTX 50 系列显卡如 5060、5070 Ti、5080必须安装开源版 NVIDIA 驱动命令行安装需要指定-open后缀sudoaptinstallnvidia-driver-575-open# 或sudoubuntu-driversinstallnvidia:575-open三、安装前环境预检与冲突排查⚠️ 重要提示90% 的驱动问题都可以通过安装前的系统状态检查来预防。打开终端Ctrl Alt T依次执行以下检查3.1 确认显卡型号lspci-nn|grep-invidia输出示例01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA102 [GeForce RTX 3080] [10de:2206] (rev a1)其中[10de:2206]的前段10de是 NVIDIA 厂商 ID后段2206是具体设备型号。记下这个信息有助于后续选择正确的驱动版本。3.2 检查当前使用的驱动lspci-k|grep-A3-ivga查看输出中Kernel driver in use:这一行。如果是nouveau说明系统正在使用开源驱动后续需要禁用它。3.3 检查 Secure Boot 状态mokutil --sb-state如果显示SecureBoot enabled说明安全启动已开启。这可能会阻止未签名的 NVIDIA 驱动模块加载安装前需要方案 A进入 BIOS 将 Secure Boot 关闭推荐方案 B在安装过程中完成 MOK 密钥注册3.4 检查内核版本uname-rUbuntu 22.04 默认内核为5.15.0-91该内核支持 535/550 驱动。如果升级过内核需确保驱动与内核版本匹配。3.5 安装编译依赖安装 NVIDIA 驱动需要编译内核模块必须提前安装必要的工具sudoaptupdatesudoaptinstallbuild-essential gccmakedkmssudoaptinstalllinux-headers-$(uname-r)包名作用build-essential包含gcc、make等基本编译工具dkmsDynamic Kernel Module Support确保内核更新后驱动自动重新编译linux-headers-$(uname -r)当前内核版本对应的头文件编译驱动时必需 提示dkms非常重要。没有它每次系统内核更新后你的 NVIDIA 驱动都可能失效需要手动重装。四、禁用 Nouveau 开源驱动⚠️ 注意这是最关键的一步。如果不先禁用 NouveauNVIDIA 驱动安装必然失败。4.1 清除旧的 NVIDIA 驱动残留如果你之前安装过 NVIDIA 驱动先彻底清理sudoapt-get--purgeremove*nvidia*sudoapt-get--purgeremove*cuda*sudoaptautoremove 提示如果之前用.run文件安装过驱动还需要运行卸载脚本sudo/usr/bin/nvidia-uninstall# 如果提示找不到文件说明之前没用过此方式4.2 将 Nouveau 加入黑名单推荐方式创建独立配置文件sudobash-cecho blacklist nouveau /etc/modprobe.d/blacklist-nvidia-nouveau.confsudobash-cecho options nouveau modeset0 /etc/modprobe.d/blacklist-nvidia-nouveau.conf验证文件内容cat/etc/modprobe.d/blacklist-nvidia-nouveau.conf应显示blacklist nouveau options nouveau modeset0备选方式通过 GRUB 内核参数禁用sudonano/etc/default/grub# 找到 GRUB_CMDLINE_LINUX_DEFAULT 行在引号内添加 nouveau.blacklist1# 修改为# GRUB_CMDLINE_LINUX_DEFAULTquiet splash nouveau.blacklist1sudoupdate-grub4.3 更新内核并重启sudoupdate-initramfs-usudoreboot4.4 验证 Nouveau 是否已禁用重启后在终端执行lsmod|grepnouveau如果命令没有任何输出说明 Nouveau 已被成功屏蔽可以继续下一步。 提示在 Ubuntu 22.04 中通过正规渠道如ubuntu-drivers或附加驱动安装 NVIDIA 驱动时系统通常会自动处理 Nouveau 的禁用问题。如果后续使用推荐方法安装此步骤可以跳过但提前做好清理能避免绝大多数潜在冲突。五、安装 NVIDIA 驱动三种方法任选其一方法一ubuntu-drivers 命令行安装 ⭐ 首选这是最推荐的方式简单可靠系统会自动检测并推荐最佳驱动版本。步骤 1安装工具通常已预装sudoaptinstallubuntu-drivers-common步骤 2添加 Graphics Drivers PPA可选但推荐Ubuntu 官方仓库中的驱动版本可能较旧添加 PPA 可以获取更新且更稳定的驱动sudoadd-apt-repository ppa:graphics-drivers/ppasudoaptupdate步骤 3查看系统推荐的驱动版本sudoubuntu-drivers devices输出示例 /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 modalias : pci:v000010DEd00002206sv00001458sd0000403Fbc03sc00i00 vendor : NVIDIA Corporation model : GA102 [GeForce RTX 3080] driver : nvidia-driver-535 - distro non-free recommended driver : nvidia-driver-550 - distro non-free带recommended标记的就是系统推荐的最佳版本。步骤 4安装驱动自动安装推荐驱动sudoubuntu-drivers autoinstall或者手动指定版本更可控sudoaptinstallnvidia-driver-535步骤 5重启系统sudoreboot 提示即使安装完成后nvidia-smi暂时看不到显卡信息重启后就能正常显示这是正常现象。方法二图形界面安装备选适合不太熟悉命令行的用户操作更直观。在应用程序菜单中搜索并打开“软件和更新”切换到“附加驱动”选项卡系统会自动检测可用驱动选择标记为专有测试过tested的推荐版本点击应用更改输入密码等待安装完成点击重启使驱动生效 提示如果命令行ubuntu-drivers autoinstall反复失败可以试试这个图形界面方法有时它能自动解决一些奇怪的依赖冲突。方法三NVIDIA 官网 .run 文件手动安装最后手段⚠️ 警告这是一个更复杂的方案仅在前两种方法都失败时才考虑。操作繁琐需要手动处理后续内核更新问题。官方社区甚至建议不要直接从 NVIDIA 安装.run文件。步骤 1下载驱动访问 NVIDIA 中国驱动下载中心根据显卡型号和操作系统Linux 64-bit下载.run文件。⚠️ 注意下载的驱动文件要放在英文路径中避免中文路径导致问题。步骤 2进入 TTY 模式并停止图形界面# 按 Ctrl Alt F2或 F3~F6进入 TTY 命令行# 登录后停止图形界面sudoservicegdm3 stop# 如果使用 GDM# 或sudoservicelightdm stop# 如果使用 LightDM如果 TTY 界面出现中文乱码exportLANGUTF-8exportLANGUAGEUTF-8步骤 3执行安装cd~/Downloadschmod777NVIDIA-Linux-*.runsudo./NVIDIA-Linux-*.run --no-opengl-files --no-x-check --no-nouveau-check参数作用--no-opengl-files只安装驱动不安装 OpenGL 文件--no-x-check安装时关闭 X 服务检查--no-nouveau-check跳过 Nouveau 检查步骤 4安装过程中的选项Install Nvidias 32-bit compatibility libraries?→ 选择NoWould you like to run the nvidia-xconfig utility...?→ 选择Yes其他选项保持默认步骤 5重启sudoservicegdm3 start# 恢复图形界面sudoreboot三种方法对比对比维度方法一ubuntu-drivers方法二图形界面方法三.run 手动操作难度⭐ 简单⭐ 最简单⭐⭐⭐ 较难可靠性✅ 高✅ 高⚠️ 中等版本可控性✅ 可指定版本⚠️ 仅可选列表中版本✅ 完全可控内核更新适配✅ 自动DKMS✅ 自动DKMS❌ 需手动处理推荐指数⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐六、验证驱动安装重启后打开终端执行nvidia-smi如果成功会看到类似以下输出----------------------------------------------------------------------------- | NVIDIA-SMI 535.154.05 Driver Version: 535.154.05 CUDA Version: 12.2 | |--------------------------------------------------------------------------- | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | || | 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A | ...重点关注Driver Version驱动版本号CUDA Version驱动支持的最高 CUDA 版本后续安装 CUDA Toolkit 不能超过这个值GPU Name你的显卡型号还可以通过以下命令打开 NVIDIA 设置面板nvidia-settings如果命令不存在sudoaptinstallnvidia-settings七、常见问题与排坑指南问题可能原因解决方案nvidia-smi报错 “NVIDIA-SMI has failed…” 或 “No devices were found”驱动未正确加载Nouveau 未禁用干净Secure Boot 阻止加载① 确认 Nouveau 已禁用lsmod | grep nouveau应无输出。② 确认驱动已安装dpkg -l | grep nvidia-driver。③ 检查 Secure Bootmokutil --sb-state。④ 彻底清理重装sudo apt purge *nvidia*→ 重启 → 重新安装。安装驱动后重启黑屏或卡在登录界面驱动版本与内核/显卡不兼容Wayland 与 NVIDIA 不兼容① GRUB 界面按e在quiet splash后加nomodeset临时进入。② 切换到 Xorg 显示协议。③ 卸载当前驱动换一个版本重试。④ 检查 HDMI/DP 线是否插在独立显卡接口上。安装时提示 “Operation not permitted” 或模块签名失败Secure Boot 阻止未签名驱动模块加载进入 BIOS 关闭 Secure Boot或安装时设置 MOK 密码并在重启后完成密钥注册。ubuntu-drivers devices没有输出软件源问题显卡太新官方源暂未收录① 确保启用universe和multiverse源。② 添加 Graphics Drivers PPAsudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update。使用.run文件安装时报 GCC 版本错误GCC 版本过低或未安装安装 GCC 12sudo apt install gcc-12 g-12。内核更新后驱动失效DKMS 未正确安装或未启用确保已安装dkms检查dkms status。修复sudo apt install --reinstall nvidia-driver-535。nvidia-smi显示 “No devices were found” 但驱动已安装双显卡系统 GPU 运行模式问题prime-select query检查当前 GPU使用sudo prime-select nvidia切换到独显并重启。安装驱动后 WiFi 消失内核更新导致无线网卡驱动未适配在 GRUB 高级选项中回退到旧内核启动或重新安装无线网卡驱动。八、总结本文要点回顾安装顺序NVIDIA 驱动必须在所有其他开发环境之前安装这是确保后续环境稳定性的关键。推荐方法首选ubuntu-drivers autoinstall命令或软件和更新图形界面。关键步骤禁用 Nouveau → 安装编译依赖 → 选择recommended标记的驱动版本 → 重启验证。验证成功nvidia-smi能正确输出 GPU 信息和驱动版本即可。最后手段如果以上方法都失败再考虑从 NVIDIA 官网下载.run文件手动安装。 系列导航下一篇Ubuntu 22.04 视觉开发环境搭建二CUDA Toolkit 安装与环境配置[[技术笔记/视觉环境搭建/Ubuntu22.04.2视觉开发环境搭建全流程]] — 原始完整笔记参考资料NVIDIA 官方驱动下载Ubuntu 官方文档NVIDIA 驱动安装NVIDIA CUDA 安装指南 - LinuxGraphics Drivers PPAArchWiki: NVIDIA

相关新闻