admin 管理员组

文章数量: 887021

前言

本文是在经历了3天内5次重装Ubuntu系统后写下的,根本原因就是这篇文章的主题——安装NVIDIA显卡驱动!写下本文是为了让自己今后不再出同样类型的错误,同时,给其他出现同样问题的人一些启发!

本文实例的电脑配置如下:

型号:宏碁暗影骑士擎

CPU:i5-12500H

GPU:RTX 3050 

RAM:16 G

系统:Ubuntu 20.04

问题描述

本人在安装apollo的过程中需要安装显卡驱动,起先是根据apollo官网给出的建议直接下载了470.63.01并进行安装,如下(注意下面的方法不正确哈):


问题出现

在安装完所有的后续步骤后重启ubuntu的过程中发现2种情况的黑屏

  1. 在grub引导菜单选择ubuntu后进入黑屏后,左上角有“-”光标一直在闪烁,操作无反应且一直进不去系统。
  2. 如下图所示的报错

原因分析

其实这两种错误都是由于安装的NVIDIA显卡驱动与ubuntu自带的nouveau发生了冲突导致的,具体的解决方法建议首先参考一下链接:

NVIDIA显卡的Ubuntu驱动程序安装方法_哔哩哔哩_bilibili

本文将以上链接中的方法总结如下(针对双系统):

  1. 启动电脑,进入引导菜单,将光标移动到 Ubuntu项,按键盘上的 "E" 键;
  2. 进入GRUB页面后,选择首单词为 linux 对应的行,将光标移动到该行的末尾(一般这行的倒数第2、3个参数为:quiet splash),在这行末尾空一个后输入:nomodeset ,按下键盘的 “Ctrl + X” 或者 F10启动,就能进入熟悉的Ubuntu系统桌面了!
  3. 之后 我们要将系统自带的nouveau驱动加入系统黑名单中,输入:sudo gedit /etc/modprobe.d/blacklist.conf ,在文件的末尾添加以下字段:blacklist nouveau ,次操作即 将nouveau驱动加入系统黑名单了!
  4. 更新黑名单:sudo update-initramfs -u  
  5. 安装nvidia的显卡驱动,即可正常启动,步骤见后文。

本人在参考该链接以及网上的各种教程试了多次并未解决问题,导致好几次以为重装ubuntu更省事,但并不省事!

网上的各种文章又是禁用nouveau驱动,又是切换命令行界面的(grub引导菜单定位到ubuntu后按"e"键后进入,典型参考博客为:)。结果我按照这种方法一通操作,重启后就卡在命令行界面出不去了(无法切换回图形界面),或者是在登录界面重复登录,进不了系统。就这样我一通操作了好几天都没解决。

解决思路

本文在第5次重装完以后,重新又从头开始安装了一次,这次注意到了各种细节,算是我成功安装的保证吧。具体思路如下:

首先,我的GPU型号为:RTX 3050,因此在终端中执行以下命令查看自己电脑适配的驱动型号:

ubuntu-drivers devices

得到系统推荐的有关本机显卡其驱动的相关信息,如下图(采用的前人的图片)所示:

同时,还可以到NVIDIA驱动下载官网官方驱动 | NVIDIA查看进一步确定自己电脑适配的驱动器型号(匹配特别重要)选择适配本机显卡型号的驱动版本,点击搜索。

上述搜索结果与 ubuntu-drivers devices 推荐的版本是相对一致的(但是ubuntu-drivers devices推荐的是对应版本号的server版本)。

接下来,确认以后就要安装了。

方法一

对于新手,强烈推荐 直接从系统软件和更新中的附加驱动里更新。

方法二

对于老手,可一次执行以下命令安装驱动:

//占个位置55~

方法三

1、卸载之前安装的版本:

sudo ./NVIDIA-Linux-x86_64-*.run --uninstall
sudo apt remove --purge nvidia*
sudo apt autoremove

2、将刚下好的驱动.run文件赋予执行权限:

sudo  chmod  +x NVIDIA-Linux-x86_64-535.14.05.run

3、运行安装:

sudo  ./NVIDIA-Linux-x86_64-535.14.05.run

4、执行安装过程中的一些选项如下:

  1. The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续
  2. Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续
  3. Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 NO 继续
  4. 安装过程中会询问是否安装32位的,选择 NO 继续

5、安装完毕后,您可以通过nvidia-smi指令来检查驱动是否安装成功,如果一切正常,您可以看到类似以下的提示:

Tue Jan  3 12:04:21 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.91.03    Driver Version: 470.63.01    CUDA Version: 11.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  GeForce GTX 1080    Off  | 00000000:01:00.0 Off |                  N/A |
|  0%   38C    P8     7W / 198W |    239MiB /  8118MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
 
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      2566      G   /usr/lib/xorg/Xorg                 18MiB |
|    0   N/A  N/A      2657      G   /usr/bin/gnome-shell               67MiB |
|    0   N/A  N/A      6104      G   /usr/lib/xorg/Xorg                132MiB |
|    0   N/A  N/A      6234      G   /usr/bin/gnome-shell               13MiB |
|    0   N/A  N/A      7440      G   gnome-control-center                1MiB |
+-----------------------------------------------------------------------------+

注意:上图中,最下面一行如果出现了 no processor found等字样的,很可能安装错误了!解决方法见:http://t.csdnimg/QtOJW

注意事项

在执行 update-initramfs -u 时如果报错

update-initramfs: Generating /boot/initrd.img-5.4.0-62-generic
I: The initramfs will attempt to resume from /dev/sdxx
I: (UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
I: Set the RESUME variable to override this.

问题直接原因应为/swap分区的UUID被修改后而没有加入 RESUME file

则按照以下方法进行解决:

  1. 首先使用如下命令打印/swap分区的UUID号,比对一下确认和上面的系统打印输出一致,锁定为该问题
  2. blkid | awk -F\" '/swap/ {print $2}'
  3. 然后使用如下命令写入/swap分区的UUID号
  4. printf "RESUME=UUID=$(blkid | awk -F\" '/swap/ {print $2}')\n" | sudo tee /etc/initramfs-tools/conf.d/resume
  5. 最后更新内核文件
  6. sudo update-initramfs -u

参考资料
 

http://t.csdnimg/RnZNP

http://t.csdnimg/yA907

本文标签: 显卡驱动 黑屏 Ubuntu Nvidia