Ubuntu 22.04 手动安装 NVIDIA 显卡驱动(含必须的 GCC 版本检查)

本教程介绍如何在 Ubuntu 22.04 上 手动安装 NVIDIA 官方显卡驱动,并解决安装过程中最常见的 GCC 版本问题与 nouveau 驱动冲突问题。


🚀 第 1 步:检查并升级 GCC(非常重要!必须首先执行)

NVIDIA 驱动安装依赖准确版本的 GCC。
Ubuntu 22.04 上正确安装驱动通常需要:

GCC 版本:12.3.0


✔️ 1.1 检查当前 GCC 版本

gcc --version

如果显示的版本不是 12.3.x,必须升级,否则后续驱动编译会失败。


✔️ 1.2 安装或升级 GCC(如需)

如果系统未安装 GCC:

sudo apt install gcc make

如果需要切换 GCC 版本:

sudo apt install gcc-12 g++-12
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 100

验证版本:

gcc --version

✔️ 1.3(可选)安装完整构建工具(含 make / g++ / 编译依赖)

如果执行 NVIDIA 驱动安装时出现以下错误,则必须安装完整构建工具:

  • make: command not found
  • 内核模块编译失败
  • 缺少 C++ 编译器或内核 headers

安装构建工具:

sudo apt install -y build-essential

build-essential 包含:

  • make
  • gcc / g++
  • 核心 C/C++ 头文件与依赖库
  • 链接器 ld 等工具

验证是否安装成功:

make --version
g++ --version

🚀 第 2 步:查看显卡型号并下载对应驱动


✔️ 2.1 查看显卡型号

lspci | grep -i nvidia
(base) root@host:~$ lspci | grep -i nvidia
02:00.0 VGA compatible controller: NVIDIA Corporation Device 2684 (rev a1)
02:00.1 Audio device: NVIDIA Corporation Device 22ba (rev a1)

如果看不到具体型号(例如只显示“VGA controller: NVIDIA Corporation Device 2684”),
可前往 NVIDIA PCI 查询网站(预留位置):

PCIE-Devices

例如 PCI ID 2684 对应 GeForce RTX 4090


✔️ 2.2 前往 NVIDIA 官网下载驱动

Download The Official NVIDIA Drivers | NVIDIA

NVIDIA GeForce 驱动程序 - N 卡驱动 | NVIDIA

下载 .run 文件,例如:

NVIDIA-Linux-x86_64-550.120.02.run

🚀 第 3 步:卸载系统自带驱动并禁用 nouveau


✔️ 3.1 卸载系统内自带 NVIDIA 相关驱动

sudo apt-get --purge remove nvidia*
sudo apt autoremove

✔️ 3.2 禁用系统自带的 nouveau

编辑黑名单:

sudo vi /etc/modprobe.d/blacklist.conf

如果提示没有 vi:

sudo apt install vi

加入:

blacklist nouveau
options nouveau modeset=0

✔️ 3.3 更新 initramfs

sudo update-initramfs -u

✔️ 3.4 重启系统

sudo reboot

✔️ 3.5 检查 nouveau 是否禁用成功

lsmod | grep nouveau

无信息输出则为禁用成功

🚀 第 4 步:安装 NVIDIA 官方驱动


✔️ 4.1 停止桌面服务(桌面版 Ubuntu 必做)

sudo service lightdm stop

如果提示没有 lightdm:

sudo apt install -y lightdm
sudo service lightdm stop

✔️ 4.2 确保 GCC 版本正确(再次确认!)

gcc --version

✔️ 4.3 开始驱动安装

sudo chmod a+x NVIDIA-Linux-x86_64-550.120.02.run
sudo ./NVIDIA-Linux-x86_64-550.120.02.run -no-x-check -no-nouveau-check -no-opengl-files

-no-x-check: 安装时关闭X服务;
-no-nouveau-check: 安装时禁用nouveau;
-no-opengl-files: 只安装驱动文件,不安装OpenGL文件。


🚀 第 5 步:验证驱动是否安装成功

nvidia-smi
(base) root@host:~$ nvidia-smi
Wed Nov 26 14:24:02 2025       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 570.195.03             Driver Version: 570.195.03     CUDA Version: 12.8     |
|-----------------------------------------+------------------------+----------------------+
| 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 GeForce RTX 4090        Off |   00000000:02:00.0 Off |                  Off |
| 40%   28C    P8              4W /  450W |     503MiB /  24564MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A            9740      G   /usr/lib/xorg/Xorg                        4MiB |
|    0   N/A  N/A           10002    C+G   ...c/gnome-remote-desktop-daemon        469MiB |
+-----------------------------------------------------------------------------------------+