Ubuntu 20.04 上的 nvidia-340 驱动程序

vel*_*s14 14 apt nvidia xorg graphics drivers

我有一台装有 Windows8 和 Ubuntu 20.04.3 LTS 的双启动计算机。

它工作得很好,直到我通过 GUI 弹出窗口按下“是”(安装)来从 Ubuntu 进行一些自动更新。这些更新失败率约为 70%。问题出在 nVidia 驱动程序上

我的主板是GT216 (GeForce GT 220)。运行ubuntu-drivers devices我得到:

driver: nvidia-340 - distro non-free recommended

driver: xserver-xorg-video-nouveau -distro free builtin.

更新失败后关闭计算机后,重新启动时,我在登录屏幕上出现登录无限循环(输入密码,无法登录 Gnome 桌面,再次要求输入密码,再次输入密码,无法登录 Gnome 桌面,重复)。我在网上查了一下,发现 nvidia-340 驱动程序与我当前的内核版本不兼容。

我使用tty终端完成了本教程https://www.if-not-true-then-false.com/2020/inttf-nvidia-patcher/ ,然后通过运行通过教程获得的可执行文件安装了 nvidia-340。我按照这里的步骤操作:https://www.if-not-true-then-false.com/2021/debian-ubuntu-linux-mint-nvidia-guide/#before-installation。我现在可以登录 Gnome。

问题:

我所有的图形程序都被毁了。过去,当我的机器正常运行时,我安装了 Qt5 并链接到我用于工作的框架。现在该框架不再起作用,我无法再针对可视化驱动程序编译程序。

我尝试再次重新安装可视化驱动程序,就像 3-4 个月前在同一台计算机上所做的那样(当我成功设置我用于工作的框架时):但我在第一步就失败了: sudo apt install qt5-default

正在删除 nvidia-340 (340.108-0ubuntu5.20.04.2)... /var/lib/dpkg/info/nvidia-340.postrm: 59: /usr/sbin/update-initramfs: 未找到

dpkg:处理软件包 nvidia-340 时出错(--remove):

安装的 nvidia-340 软件包删除后脚本子进程返回错误退出状态 127

dpkg:错误太多,正在停止

处理时遇到错误:

英伟达-340

由于错误太多,处理已停止。

E: 子进程 /usr/bin/dpkg 返回错误代码 (1)。

我所做的尝试:

  1. 我尝试按照此处所写的操作Ubuntu 18.10 Problem with Nvidia 340 drivers

  2. 我尝试运行sudo apt-get install nvidia-current:E:软件包“nvidia-current”没有安装候选者

  3. 我尝试从应用程序 -> 软件和更新 -> 其他驱动程序切换到 Nouveau,但它不起作用。当我点击切换到那个时,Error while applying changes: pk-client-error-quark: Error while installing package: installed nvidia-340 package post-removal script subprocess returned error exit status 127 (313)

  4. 我尝试运行nvidia-settings-> 这会弹出一个包含各种信息的新窗口,如果需要,我可以提供这些信息。

  5. 我尝试运行sudo apt-ache policy nvidia-340-> 这返回 nvidia -340 : Installed : 340-108-0ubuntu5.20.04.2 Candidate : 340-108-0ubuntu5.20.04.2 ... 等

  6. 我尝试运行which nvidia-smi-> 这不会返回任何内容

6') 我尝试运行nvidia-smi-> returns 'nvidia-smi' command nout found, can be installed with: 这里出现了一个 nvidia 驱动程序列表,建议通过 sudo apt install nvidia-XYZ 或 sudo apt install nvidia-utils 安装-XYZ。

  1. 我尝试运行sudo ubuntu-drivers autoinstall-> 这返回与以前相同的结果:将删除以下软件包:nvidia-340 正在删除 nvidia-340 ... dpkg:处理软件包 nvidia-340 时出错(--remove):已安装 nvidia-340软件包删除后脚本子进程返回错误退出状态 127 dpkg:错误太多,正在停止处理时遇到错误:nvidia-340 ...

  2. 我尝试运行sudo apt-get install nvidia-340-> 这返回 nvidida-340 已经是最新版本 (340.108-0ubuntu5.20.04.2) 0 已升级,0 已新安装,0 已删除,0 未升级。1 未完全安装或拆卸。需要获取 52,0 MB 的档案。执行此操作后,将使用 0B 的额外磁盘空间。你想继续吗 ?是的 Y Get: 1 ... Fetched 52,0 MB in 2 s 处理 libc-bin (2.31-0ubuntu9.2) 的触发器 ... 在这里我没有得到任何更多返回的语句,我只是得到一个新行在终端上输入新命令,如 $ > ... (因此进程正常退出,我可以继续做事情)。

当编写(再次配置我的框架)时,sudo apt install qt5-default我再次遇到与上面相同的错误(在问题部分)

你知道发生了什么事或者我该怎么办吗?我真的希望能够再次编译应用程序并在我的机器上运行它们。

我可以提供任何可能对解决我的问题有用的必要信息。

先感谢您!

编辑(新信息):

我当前的内核版本在运行时显示为输出uname -r

5.11.0-36-generic

mik*_*ver 15

您需要安装 5.4 内核,并卸载 5.11。

  1. sudo apt purge nvidia*

  2. sudo apt install --install-recommends linux-generic

  3. 现在重新启动,并在 grub 菜单中选择内核 5.4。

  4. sudo apt remove --purge linux-generic-hwe-20.04 linux-hwe-* linux-modules-5.11* linux-modules-extra-5.11*

  5. 如果到目前为止一切正常,请运行sudo ubuntu-drivers autoinstall安装 Nvidia 驱动程序。


bra*_*ult 12

坚持使用5.4内核不会永远是一个选择。我也遇到了同样的问题early 2009 iMac,我的卡可用的最后一个专有 nvidia 驱动程序C79 [GeForce 9400]也是nvidia-340.

正如其他人所说,内核 > 5.4 不支持此驱动程序。

这意味着当您选择更新的内核时(您必须这样做,很快或稍后),您将有两个选择:

  1. 尝试nouveau驱动程序(我的 iMac 上有很多冻结问题,但它可以为你工作,我们的卡是不同的)
  2. 将专有驱动程序保留nvidia-340在最新的内核中

对于(2),有解

基本上,启动您的新内核(例如5.11,使用nouveau驱动程序),然后执行上面链接中解释的操作,例如:

sudo add-apt-repository ppa:kelebek333/nvidia-legacy
sudo apt-get update
sudo apt install nvidia-340

# Warning: below line for kernels >= 5.11
sudo apt install xorg-modulepath-fix
Run Code Online (Sandbox Code Playgroud)

我确实在旧 iMac 上从20.04(kernel 5.4,已经有kelebek333nvidia-340版本)升级到了21.10(kernel 5.13)(在升级过程中我没有遇到任何问题)。升级过程确实删除了kelebeck333存储库),并启用了nouveau驱动程序。

启动新系统后,我再次应用了上面的命令,我的nvidia配置现在是:

$ lsb_release  -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 21.10
Release:    21.10
Codename:   impish

$ uname -r
5.13.0-28-generic

$ dpkg -l | grep nvidia
ii  nvidia-340                             340.108-4lmtrimpish3                amd64        NVIDIA binary driver - version 340.108
ii  nvidia-opencl-icd-340                  340.108-4lmtrimpish3                amd64        NVIDIA OpenCL ICD
ii  nvidia-settings                        470.57.01-0ubuntu3                  amd64        Tool for configuring the NVIDIA graphics driver
ii  screen-resolution-extra                0.18.1                              all          Extension for the nvidia-settings control panel

$ inxi -Gx
Graphics:  Device-1: NVIDIA C79 [GeForce 9400] vendor: Apple iMac 9 1 driver: nvidia v: 340.108 bus-ID: 03:00.0 
           Device-2: Apple Built-in iSight type: USB driver: uvcvideo bus-ID: 1-4:2 
           Display: server: X.org 1.20.13 driver: loaded: nvidia tty: 186x32 
Run Code Online (Sandbox Code Playgroud)

编辑:上述升级过程也适用于Ubuntu 22.04.