Ubuntu 系统 NVIDIA 显卡驱动及 CUDA 安装

好的,这是根据您的要求,对“可选:安装 CUDA 工具包”部分进行的补充和完善后的完整文档。


Ubuntu 24.04 安装 NVIDIA GeForce RTX 4060 显卡驱动及 CUDA 开发环境完整指南

系统环境:

  • 操作系统: Ubuntu 24.04.2 LTS (Noble Numbat)
  • 显卡型号: NVIDIA GeForce RTX 4060 (PCI ID: 10de:2882)
  • 当前驱动:nouveau (开源驱动)

1. 系统准备与信息确认

在开始安装前,先确认系统和显卡信息。

# 确认显卡硬件信息及当前使用的驱动 lspci -nnk|grep-i vga -A3# 确认 Ubuntu 版本 lsb_release -a# 更新系统包列表sudoapt update 

2. 识别并选择推荐驱动版本

使用 ubuntu-drivers 工具查看系统推荐的驱动版本。

# 查看可用的 NVIDIA 驱动版本 ubuntu-drivers devices 

输出示例及解读:

== /sys/devices/pci0000:00/.../0000:01:00.0 == modalias : pci:v000010DEd00002882... vendor : NVIDIA Corporation model : AD107 [GeForce RTX 4060] driver : nvidia-driver-550 - distro non-free recommended # <-- 推荐安装 driver : nvidia-driver-570-server-open - distro non-free ... driver : xserver-xorg-video-nouveau - distro free builtin 
  • nvidia-driver-550 被标记为 recommended,是针对 RTX 4060 的最佳选择。
  • nvidia-driver-535 是较旧的稳定版本。
  • nvidia-driver-570-server 系列通常用于服务器环境。

结论: 选择安装 nvidia-driver-550


3. 安装 NVIDIA 驱动
# 安装推荐的驱动、设置工具和依赖sudoaptinstall nvidia-driver-550 nvidia-settings nvidia-prime libnvidia-extra-550 # 如果遇到 'aplay command not found' 警告,安装 alsa-utilssudoaptinstall alsa-utils 

4. 禁用开源驱动 nouveau

NVIDIA 官方驱动与 nouveau 驱动冲突,必须禁用。

# 创建并编辑黑名单配置文件sudovim /etc/modprobe.d/blacklist-nouveau.conf 

文件内容:

blacklist nouveau options nouveau modeset=0 
# 更新 initramfs 以应用更改sudo update-initramfs -u

5. 启用 DRM 内核模式设置 (可选但推荐)

此设置能改善启动体验和电源管理。

# 编辑 GRUB 配置sudovim /etc/default/grub 

修改 GRUB_CMDLINE_LINUX_DEFAULT 行:

# 修改前 # 修改后 (添加 nvidia-drm.modeset=1) GRUB_CMDLINE_LINUX_DEFAULT="nvidia-drm.modeset=1" 

更新 GRUB 配置:

sudoupdate-grub

6. 重启系统
sudoreboot

7. 验证安装

重启后,执行以下命令验证驱动是否成功安装。

# 1. 检查 NVIDIA 驱动和 GPU 状态 nvidia-smi 

预期成功输出:

+---------------------------------------------------------------------------------------+ | NVIDIA-SMI 550.xx.xx Driver Version: 550.xx.xx CUDA Version: 12.4 | |-----------------------------------------+----------------------+----------------------+ | 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 RTX 4060 Off | 00000000:01:00.0 On | N/A | | 0% 42C P8 11W / 115W | 320MiB / 8192MiB | 0% Default | +-------------------------------+----------------------+----------------------+ 
# 2. 检查 OpenGL 渲染器是否为 NVIDIA glxinfo |grep"OpenGL renderer"# 预期输出: OpenGL renderer string: NVIDIA GeForce RTX 4060/PCIe/SSE2# 3. 检查 Prime 选择 (适用于双显卡笔记本) prime-select query # 预期输出: nvidia

8. 故障排除 (如果 nvidia-smi 失败)

如果 nvidia-smi 报错 NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver,请按以下步骤排查:

8.1 检查内核模块是否加载

lsmod |grep nvidia 
  • 成功: 应看到 nvidia, nvidia_drm, nvidia_uvm, nvidia_modeset 等模块。
  • 失败: 无输出或缺少关键模块,说明驱动未加载。

8.2 检查内核日志

sudodmesg|grep-i nvidia 
  • 查找 NVRM: Failed to load 或其他错误信息。

8.3 检查 Nouveau 是否被禁用

lsmod |grep nouveau 
  • 成功: 无任何输出。
  • 失败: 有输出,说明 nouveau 仍在运行,需返回第 4 步确认黑名单配置并再次执行 sudo update-initramfs -u

8.4 尝试手动加载模块

sudo modprobe nvidia_drm sudo modprobe nvidia_uvm sudo modprobe nvidia nvidia-smi # 再次尝试

8.5 重新生成 initramfs

sudo update-initramfs -u-k all sudoreboot

8.6 彻底重装驱动

# 彻底清除所有 NVIDIA 相关包sudoapt purge '^nvidia-.*''^libnvidia-.*'sudoapt autoremove # 重新安装推荐驱动sudoaptinstall nvidia-driver-550 nvidia-settings nvidia-prime libnvidia-extra-550 # 重新禁用 nouveau 和更新 initramfsecho-e"blacklist nouveau\noptions nouveau modeset=0"|sudotee /etc/modprobe.d/blacklist-nouveau.conf sudo update-initramfs -u# 重新配置 DRM 模式设置sudosed-i's/GRUB_CMDLINE_LINUX_DEFAULT=""/GRUB_CMDLINE_LINUX_DEFAULT="nvidia-drm.modeset=1"/' /etc/default/grub sudoupdate-grub# 最后重启sudoreboot

9. 可选:安装 CUDA 工具包 (开发环境)

CUDA (Compute Unified Device Architecture) 是 NVIDIA 的并行计算平台和编程模型,用于在 GPU 上进行通用计算。安装 CUDA 需要理解其与 NVIDIA 驱动的关系。

9.1 核心概念:CUDA 版本与 NVIDIA 驱动的兼容性

  • CUDA Toolkit (工具包): 这是开发者使用的软件包,包含编译器 (nvcc)、库、头文件和调试工具。您安装的是这个。
  • NVIDIA 驱动 (Driver): 这是操作系统与 GPU 硬件通信的底层软件。驱动中包含一个 CUDA Runtime (运行时) 组件。
  • 关键关系:NVIDIA 驱动版本决定了您能使用的最高 CUDA Toolkit 版本。 一个较新的驱动可以支持多个较旧的 CUDA Toolkit 版本。例如,nvidia-driver-550 支持最高到 CUDA 12.4。

如何选择版本?

  1. 查看 nvidia-smi 输出: 安装好驱动后运行 nvidia-smi,注意输出中的 CUDA Version: xx.x。这表示当前驱动支持的最高 CUDA 版本。
  2. 选择 CUDA Toolkit: 您可以安装等于或低于此版本号的 CUDA Toolkit。例如,如果 nvidia-smi 显示 CUDA Version: 12.4,您可以安全地安装 CUDA 12.4, 12.3, 12.2 等。
  3. 推荐策略: 通常建议安装与驱动支持的最高版本相同的 CUDA Toolkit,以获得最新的功能和性能优化。

9.2 安装 CUDA Toolkit 的两种方法

方法一:使用 Ubuntu 仓库 (推荐 - 简单)

Ubuntu 仓库提供了 nvidia-cuda-toolkit 包,它会自动安装与当前系统驱动兼容的 CUDA 版本。

# 安装仓库中的 CUDA 工具包sudoaptinstall nvidia-cuda-toolkit # 验证安装 nvcc --version# 输出应包含类似: release 12.4, V12.4.xxx
  • 优点: 简单,自动处理依赖,版本兼容性有保障。
  • 缺点: 版本可能不是最新的,功能可能不如官方包完整。

方法二:使用 NVIDIA 官方仓库 (推荐 - 功能完整)

此方法可以安装特定版本的 CUDA Toolkit。

验证安装:

nvcc --version# 应输出安装的 CUDA 版本

配置环境变量:将 CUDA 的 binlib64 目录添加到您的 PATHLD_LIBRARY_PATH 中。

# 编辑 ~/.bashrc 文件echo'export PATH=/usr/local/cuda-12.4/bin:$PATH'>> ~/.bashrc echo'export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH'>> ~/.bashrc source ~/.bashrc 

添加 NVIDIA 官方 GPG 密钥和仓库:

# 下载并添加 GPG 密钥wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb # 添加仓库 (Ubuntu 24.04 使用 22.04 的仓库,通常兼容)sudoapt-get update sudoapt-getinstall cuda-toolkit-12-4 # 安装 CUDA 12.4 版本
注意: 请根据 nvidia-smi 显示的最高 CUDA 版本来选择安装包,如 cuda-toolkit-12-3cuda-toolkit-12-2。将 12-4 替换为相应的版本号。

9.3 注意事项

  • 驱动优先: 必须先成功安装 NVIDIA 驱动,再安装 CUDA Toolkit。
  • 版本匹配: 务必确保 CUDA Toolkit 版本 不高于nvidia-smi 报告的 CUDA 版本。
  • 重启: 在安装或更新驱动后,通常需要重启才能正确加载 CUDA 运行时。
  • 多版本管理: 如果需要多个 CUDA 版本,可以使用符号链接 /usr/local/cuda 指向当前使用的版本,方便切换。

10. 性能优化建议
# 启用持久模式 (保持 GPU 始终处于高性能状态)sudo nvidia-smi -pm1# 启用 NVENC 编码加速 (可选)echo-e"options nvidia NVreg_EnableStreamMemOPs=1\noptions nvidia NVreg_EnableMSI=1"|sudotee /etc/modprobe.d/nvidia.conf sudo update-initramfs -u

总结:
成功安装 NVIDIA 驱动和 CUDA 环境的关键在于:

  1. 选择正确的驱动版本 (nvidia-driver-550 for RTX 4060)。
  2. 彻底禁用 nouveau 驱动 并更新 initramfs
  3. 重启系统 使更改生效。
  4. 使用 nvidia-smiglxinfo验证驱动安装结果
  5. 理解 CUDA 与驱动的关系,根据 nvidia-smi 的输出选择兼容的 CUDA Toolkit 版本进行安装。

遇到问题时,dmesglsmod 是最重要的诊断工具。

Read more

2026最新|国内可用 Docker 镜像加速源大全(2月持续更新):DockerHub 镜像加速与限速避坑全指南(适配 Windows / macOS / Linux / containerd /

2026最新|国内可用 Docker 镜像加速源大全(2月持续更新):DockerHub 镜像加速与限速避坑全指南(适配 Windows / macOS / Linux / containerd /

2026最新|国内可用 Docker 镜像加速源大全(2月持续更新):DockerHub 镜像加速与限速避坑全指南(适配 Windows / macOS / Linux / containerd / k3s / BuildKit) 摘要:本指南面向国内服务器与办公网络用户,系统梳理 2026年2月可用 DockerHub 镜像加速源,覆盖 Docker Desktop、dockerd、containerd、k3s、BuildKit 等场景的一键配置、多源回退与测速排障方案,帮助规避 429/Too Many Requests 与拉取超时问题。 最后更新:2026-2 适用对象:国内云服务器/办公网络拉取 DockerHub 镜像慢、易触发限速(429/“Too Many Requests”)的场景 用途:一键配置镜像加速、

By Ne0inhk
Ubuntu下TFTP与FTP服务详解

Ubuntu下TFTP与FTP服务详解

🔥作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生,研究方向无线联邦学习 🎬擅长领域:驱动开发,嵌入式软件开发,BSP开发 ❄️作者主页:一个平凡而乐于分享的小比特的个人主页 ✨收录专栏:Linux,本专栏目的在于,记录学习Linux操作系统的总结 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 Ubuntu下TFTP与FTP服务详解 📊 核心概念对比表 特性TFTP (简单文件传输协议)FTP (文件传输协议)端口UDP 69TCP 20(数据), 21(控制)连接类型无连接 (UDP)面向连接 (TCP)认证机制无认证用户名/密码认证传输模式仅二进制ASCII和二进制文件操作仅读写完整CRUD操作目录列表不支持支持典型用途网络设备固件升级、PXE启动网站文件上传、文件共享安全性非常低(无加密)较低(可选SSL/TLS)复杂度非常简单相对复杂 🖼️ 架构示意图 TFTP工作流程: ┌─────────┐ UDP 69 ┌─────────┐ │ 客户端 │ ←────────────→ │ 服务器 │ └─────────┘

By Ne0inhk
Flutter 三方库 vm_service 的鸿蒙化适配指南 - 实现具备底层热重载、内存堆栈分析与运行时指标嗅探的 VM 驱动引擎、支持端侧性能监控与调试工具链定制实战

Flutter 三方库 vm_service 的鸿蒙化适配指南 - 实现具备底层热重载、内存堆栈分析与运行时指标嗅探的 VM 驱动引擎、支持端侧性能监控与调试工具链定制实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 vm_service 的鸿蒙化适配指南 - 实现具备底层热重载、内存堆栈分析与运行时指标嗅探的 VM 驱动引擎、支持端侧性能监控与调试工具链定制实战 前言 在进行 Flutter for OpenHarmony 的高性能复杂应用开发时,如何实现在不依赖 IDE 的情况下动态监控应用的内存溢出(OOM)风险?如何实现端侧原生的性能图表展示?甚至,如何构建一套属于自己的远程调试协议?vm_service 是 Dart 核心库之一,它是 Dart 虚拟机(VM)对外暴露调试与监控能力的官方通道。本文将探讨如何在鸿蒙端驾驭这套顶级的底层驱动引擎。 一、原直观解析 / 概念介绍 1.1 基础原理 该库建立在 JSON-RPC 2.

By Ne0inhk
HarmonyOS应用开发实战(基础篇)Day07-《登录注册页面》

HarmonyOS应用开发实战(基础篇)Day07-《登录注册页面》

设计:从零构建一个专业级登录页面 在移动应用开发中,登录/注册页面是用户与系统建立身份关联的第一道门户,其设计质量直接影响用户的第一印象与使用体验。本文将基于 ArkTS 与 HarmonyOS 的 ArkUI 框架,从 UI 设计到交互逻辑,完整实现一个简洁、安全、响应式的登录页面。 一、设计目标与视觉规范 根据需求草图,我们的登录页面需包含以下核心元素: * 顶部 Logo:品牌标识,增强识别度; * 账号输入框:支持文本输入,带占位提示; * 密码输入框:密文显示,保障安全; * 操作按钮组:包含“登录”与“取消”两个功能按钮; * 交互反馈:输入校验、加载状态、跳转逻辑。 整体风格遵循 HarmonyOS 设计语言(HUAWEI Design): * 使用 vp

By Ne0inhk