【保姆级教程】【Ubuntu 22.04】从零到一搞定NVIDIA驱动,告别黑屏与依赖报错

张开发
2026/5/14 16:29:14 15 分钟阅读

分享文章

【保姆级教程】【Ubuntu 22.04】从零到一搞定NVIDIA驱动,告别黑屏与依赖报错
1. 为什么NVIDIA驱动安装这么麻烦刚接触Ubuntu的小伙伴可能都有这样的困惑为什么在Windows下点几下鼠标就能装好的显卡驱动到了Linux系统里就变得这么复杂我刚开始用Ubuntu做深度学习时也被这个问题折磨得够呛重装了三次系统才搞明白其中的门道。其实主要原因有三个第一Linux系统默认使用开源的nouveau驱动来支持NVIDIA显卡但这个驱动性能有限而且会和官方驱动冲突第二图形界面X-window和显卡驱动关系密切安装过程中需要暂时关闭图形服务第三不同版本的Ubuntu对驱动安装方式的要求也不尽相同。不过别担心跟着我的步骤一步步来保证你能顺利搞定。2. 准备工作下载正确的驱动版本2.1 确认显卡型号在开始之前我们需要先确认自己的显卡型号。打开终端CtrlAltT输入lspci | grep -i nvidia这会显示你的NVIDIA显卡型号比如我的是GeForce RTX 3090。记下这个信息接下来去官网下载驱动时会用到。2.2 官网下载驱动打开NVIDIA官网的驱动下载页面建议用英文版页面更新更及时选择对应的产品类型、系列和操作系统。这里有几个关键点需要注意产品类型选择GeForce除非你是专业卡用户产品系列选择你的显卡代数比如30系列选GeForce RTX 30 Series操作系统选择Linux 64-bit下载类型选择Production Branch稳定版下载完成后建议把.run驱动文件放在主目录下并重命名为简单的名字比如NVIDIA.run。记住路径中不要有中文或空格否则后面安装时会报错。3. 系统环境准备3.1 更新软件源和安装编译工具在安装驱动前我们需要确保系统是最新的并且安装了必要的编译工具。在终端中依次执行sudo apt update sudo apt upgrade -y sudo apt install build-essential gcc make -y这些命令会更新软件包列表升级所有可升级的软件包并安装编译驱动所需的工具链。这个过程可能需要几分钟取决于你的网速。3.2 禁用默认的nouveau驱动这是最关键也最容易出错的步骤。nouveau是Linux内核自带的NVIDIA开源驱动它会干扰官方驱动的安装。我们需要先禁用它创建黑名单配置文件sudo nano /etc/modprobe.d/blacklist-nouveau.conf在打开的文件中添加以下内容blacklist nouveau options nouveau modeset0保存文件CtrlO回车然后CtrlX退出更新initramfssudo update-initramfs -u重启系统sudo reboot重启后我们可以验证nouveau是否已被禁用lsmod | grep nouveau如果没有任何输出说明禁用成功了。如果有输出请重复上述步骤。4. 安装NVIDIA驱动4.1 进入TTY模式由于安装过程中需要关闭图形界面我们得先学会如何在纯命令行环境下操作。按下CtrlAltF3有些电脑可能是F1-F6中的任意一个这会切换到TTY终端。你需要在这里输入用户名和密码登录。注意这里的用户名是你创建账户时设置的用户名不是显示名称。如果不确定可以在图形界面打开终端输入whoami查看。4.2 关闭图形界面服务登录TTY后执行以下命令停止图形服务sudo service gdm3 stop有些系统可能使用lightdm而不是gdm3如果不确定可以尝试sudo systemctl stop gdm4.3 运行安装程序现在可以开始安装驱动了。首先切换到驱动文件所在的目录比如cd ~然后给驱动文件添加执行权限chmod x NVIDIA.run最后运行安装程序sudo ./NVIDIA.run --no-opengl-files --no-x-check这里有两个重要参数--no-opengl-files不安装OpenGL文件避免与系统自带的Mesa驱动冲突--no-x-check安装时不检查X服务安装过程中会遇到几个选项Install NVIDIAs 32-bit compatibility libraries? 选择NoWould you like to run the nvidia-xconfig... 选择Yes安装完成后重启图形服务sudo service gdm3 start或者直接重启系统sudo reboot5. 验证安装结果系统重启后打开终端输入nvidia-smi如果看到类似下面的输出说明驱动安装成功了----------------------------------------------------------------------------- | NVIDIA-SMI 525.53 Driver Version: 525.53 CUDA Version: 12.0 | |--------------------------------------------------------------------------- | 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 ... On | 00000000:01:00.0 On | N/A | | 0% 48C P8 15W / 350W | 512MiB / 24576MiB | 0% Default | | | | N/A | ---------------------------------------------------------------------------6. 常见问题解决方案6.1 安装后黑屏这是最常见的问题通常有以下几种原因HDMI线接在了主板的接口上而不是显卡的接口上我就犯过这个低级错误安装参数不正确尝试重新安装并确保使用了--no-opengl-files参数驱动版本不兼容可以尝试其他版本的驱动6.2 TTY模式下显示乱码如果你的系统语言不是英文在TTY模式下可能会出现乱码。可以临时设置语言环境export LANGen_US.UTF-8 export LANGUAGEen_US6.3 循环登录问题安装驱动后如果出现循环登录输入密码后又返回登录界面可以尝试进入TTY模式CtrlAltF3删除Xorg配置文件sudo rm /etc/X11/xorg.conf重新配置sudo nvidia-xconfig7. 进阶配置与优化7.1 自动加载驱动模块为了让驱动在每次启动时自动加载可以编辑/etc/modules文件sudo nano /etc/modules添加以下内容nvidia nvidia-drm nvidia-modeset保存后更新initramfssudo update-initramfs -u7.2 电源管理设置如果你用的是笔记本可能需要调整电源管理设置以获得更好的性能sudo nano /etc/default/grub找到GRUB_CMDLINE_LINUX_DEFAULT这一行添加nvidia.NVreg_PreserveVideoMemoryAllocations1保存后更新grubsudo update-grub7.3 多显示器配置如果你使用多个显示器可以使用nvidia-settings工具进行配置sudo apt install nvidia-settings nvidia-settings这个图形化工具可以让你方便地调整分辨率、旋转显示器等设置。8. 驱动更新与维护8.1 检查新驱动版本定期检查NVIDIA官网是否有新驱动发布是个好习惯。你也可以使用以下命令查看当前驱动信息nvidia-smi --query-gpudriver_version --formatcsv,noheader8.2 安全移除旧驱动在安装新驱动前最好先卸载旧驱动sudo nvidia-uninstall然后按照前面的步骤重新安装新驱动。8.3 使用PPA源安装可选如果你不想每次都手动下载安装可以添加官方PPA源sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update然后使用apt安装驱动sudo apt install nvidia-driver-525这种方法比较简单但可能不是最新版本。

更多文章