1.背景
电脑:联想小新pro 16 IRH8(2023)
CPU:intel i5-13500H
GPU:NVIDIA GeForce RTX 4050
已经通过鱼香肉丝启动盘制作选择在一块sandisk 3.2 gen 2 256g 移动固态U盘上块装Ubuntu22.04,并通过一键快装安装了ros2-humble。
参考文章:
ubuntu22.04安装NVIDIA显卡驱动(已上机实验)-CSDN博客
Ubuntu22.04 安装显卡驱动_ubuntu2204安装nvidia显卡驱动-CSDN博客
2.过程
1.前期准备
重启进入BIOS(多按几次CTRL + FN + F2)
关闭“安全启动”
2.禁用nouveau
打开终端输入
sudo gedit /etc/modprobe.d/blacklist.conf
在打开的文本最后添加以下内容,添加后保存
blacklist nouveau
options nouveau modeset=0
更新软件列表和环境源
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential
更新后,输入以下命令,检查nouveau是否关闭
lsmod | grep nouveau
没有输出则关闭成功,有输出则重启
(前期准备可以参考上述参考文章以及其他详细文章,我以前尝试安装过,所以有些东西已经设置好了就没太管)
我这里弹出了一堆东西,所以接下来是我自己的步骤:
3.我的步骤:
Tip:先记住自己Ubuntu系统的 用户名 和 密码
1.进入命令行界面
1.重启电脑后开一个终端输入:
sudo service gdm3 stop
这时候电脑一片漆黑,左上角有个光标闪烁(未截图记录)
这时候是所谓的“TTY模式”(我问GPT的,具体是啥不知道)
Ctrl + Alt + F3 进入命令行界面,登陆账户(先输入用户名,回车,再输入密码)
Tip:如何恢复图形界面
输入:(我问GPT的,我自己没有试过,如果装到一半不装了建议看其他教程如何退出)
sudo service gdm3 start
登陆成功后,输入:
sudo apt install nvidia-drivers autoinstall
不重要的内容(上下用横线隔开)————————
安装细节补充:
我从N卡官网上下载的最新驱动文件为:NVIDIA-Linux-x86_64-570.144.run,下载完成后自动放在"下载文件夹"
进入到命令行界面,并成功登陆后,我想进入"下载"文件夹,在这个文件夹下开始驱动程序的安装,这就有个问题:
怎么输入中文?
GPT给出的一种方法是:
cd "$(xdg-user-dir DOWNLOAD)"
GPT:这个命令是万能的,会自动跳转到你的下载目录,不需要你打出任何中文。
输入后确实发现多了两个"**",应该是进入了下载目录而命令行不能显示中文。
然后按参考文章步骤进行安装,发现不管怎样都运行不了安装程序:
GPT分析:
最常见两个可能原因:
1.图形界面未完全关闭,残留 X 服务(具体是什么我不知道)
解决方法:输入:
sudo system to isolate multi-user.target
以彻底关闭图形界面,确保我处在真正的纯命令行环境,然后再重新运行 .run 文件。
(结果如上面第二张图,没什么用)
2.安装程序的图形UI依赖缺失(没有 ncurses 或终端环境不兼容)
这个我没有尝试,故具体步骤就不放了
对于上面的第二张图片,GPT又给出了失败分析:
我的Ubuntu使用的内核版本是6.8.0,这版本太新了,.run文件可能不兼容这个内核版本
他给出了几种方案,其中第二种,就是这个命令:
sudo ubuntu-drivers auto install
随手一试,然后就有了下文。
——————————————————————————————————————————————————
这个命令会自动识别你的NVIDIA显卡型号,并安装最兼容的官方驱动,通常更稳定且不会遇到 .run 安装失败的问题(GPT语)
没想到安装的很顺利:(要等一会,他会一直谈弹出信息,最后是如下这样)
然后在终端中输入:
sudo reboot
GPT:这是必须的,因为内核模块、驱动配置和 X server都需要在重启后重新加载。
2.重启后
自动进入正常的桌面,只不过显示屏幕会变小,需要重新调整
开一个终端输入:
nvidia-smi
如图,成功了。
GPT的分析:
✅ 安装成功的关键证据:
信息项 | 结果 | 说明 |
---|---|---|
驱动版本 | 550.120 | 这是新版本,兼容 Ubuntu 22.04 和你当前内核 |
CUDA 版本 | 12.4 | 驱动自动安装了对应版本的 CUDA Runtime |
GPU 识别 | NVIDIA GeForce RTX 4050 | 显卡识别正常,说明驱动已加载 |
图形界面进程 | /usr/lib/xorg/Xorg | 系统当前图形界面已通过 NVIDIA 驱动运行 |
显存使用 | 9MiB / 6141MiB | 正常空闲状态,GPU未参与计算但处于待命状态 |