内核更新不允许 Ubuntu 22.04 上使用 Nvidia 1660 驱动程序 - 我该如何修复?

内核更新不允许 Ubuntu 22.04 上使用 Nvidia 1660 驱动程序 - 我该如何修复?

今天早上通过内置更新运行了基本内核更新。

现在我的 NVidia 1660 无法被识别。

尝试使用以下命令再次安装 nvidia 驱动程序:

$ sudo ubuntu-drivers autoinstall

失败并出现如下错误:

Traceback (most recent call last):
  File "/usr/bin/ubuntu-drivers", line 513, in <module>
    greet()
  File "/usr/lib/python3/dist-packages/click/core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/click/core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3/dist-packages/click/core.py", line 1659, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3/dist-packages/click/core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3/dist-packages/click/core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 84, in new_func

现在,图形显示如下:

llvmpipe(LLVM 13.0.1,256 位)

我的 2 个显示器中只有 1 个可以工作,并且显示分辨率为 1024x768。

不知道该怎么办。

更新

我刚刚发现了这一点,但这似乎是误报。 nvidia 1660 驱动程序

我尝试运行 NVidia 提供的 .run 文件进行安装,并看到了以下内容:

我认为重要的部分是:

错误:无法找到当前正在运行的内核的内核源代码树。

内核源代码

然后我尝试在面板中切换并看到以下内容:

错误内核

这肯定也发生在其他人身上,对吧?

我已经安装了内核头文件,以便让 NVidia 驱动程序正常工作:

sudo apt-get install linux-headers-$(uname -r)

我现在正在下载 Ubuntu 22.04 iso,制作 USB 映像并查看是否可以修复安装。

因此没有“修复”选项,但是当我运行 USB 记忆棒版本时,我可以使两个显示器恢复有效(高)分辨率。

这太荒谬了。这一切都是因为我接受了官方更新中的内核更新。哎呀!

明确的答案

我不得不再次安装 Ubuntu 22.04.1 LTS。我非常很幸运,因为我昨天刚刚对我的系统进行了完整备份。呼...非常幸运。

谨防!

我总是立即安装内核更新。现在,如果可以的话,我会等待安装它们。

恢复上一个内核

我还尝试恢复以前的内核。以下是我所做的选择的快照:

GRUB 内核列表

我尝试了每一个,但没有一个能让我回到一个好的位置。即使尝试了每一个,我仍然只有一个屏幕,并且它停留在 1024x768。

2022-10-26 我刚刚启动电脑,它又回到了 1 个屏幕和 1024x768。我现在真的不喜欢 Ubuntu。Mint 上会发生这种情况吗?

答案1

更新我的 ubuntu 内核后,我遇到了完全相同的问题。

我的系统详细信息:
Linux ubuntu-linux 5.15.0-52-通用#58-Ubuntu SMP x86_64 x86_64 x86_64 GNU/Linux

这里的关键是删除新内核,然后删除系统里与该内核关联的所有 nvidia 驱动程序。

删除内核的命令。
sudo apt remove linux-*5.17*

删除内核后,请重新启动系统。现在,我们将修复运行时出现的回溯错误。sudo ubuntu-drivers install

出现此问题的原因是 nvidia 驱动程序中的版本格式命名最近发生了变化。

我们要编辑的脚本位于 中/usr/lib/python3/dist-packages/UbuntuDrivers

在其中,只需将其更改
version = int(package_name.split('-')[-1])
version = int(package_name.split('-')[2])

现在,如果您尝试运行该命令:
sudo ubuntu-drivers install

它将被修复并再次运行,它将自动为您配置 nvidia 驱动程序。

如果运行后您发现安装了 nouveau 驱动程序而不是 nvidia,您只需打开Additional drivers应用程序并选择 nvidia 驱动程序并从那里安装它。

答案2

我遇到了完全相同的问题,它对我来说和 raddevus 所说的一样,安装了 470 驱动程序,但是我必须先删除所有 Nvidia 驱动程序,然后sudo apt remove --purge '^nvidia-.*'从附加驱动程序中选择 470 并重新启动。

答案3

我今天启动电脑时又遇到了同样的问题。太糟糕了。只有 1 个屏幕和 1024x768 分辨率。

我进入升级设置并找到附加驱动程序选项卡并选择以下驱动程序:

nvidia 1660 驱动程序

如果您运行的是 NVidia 1660 显卡,则必须选择这个。这解决了问题。
我不敢相信它已经解决了。

相关内容