![内核更新不允许 Ubuntu 22.04 上使用 Nvidia 1660 驱动程序 - 我该如何修复?](https://linux22.com/image/1190316/%E5%86%85%E6%A0%B8%E6%9B%B4%E6%96%B0%E4%B8%8D%E5%85%81%E8%AE%B8%20Ubuntu%2022.04%20%E4%B8%8A%E4%BD%BF%E7%94%A8%20Nvidia%201660%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%20-%20%E6%88%91%E8%AF%A5%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%EF%BC%9F.png)
今天早上通过内置更新运行了基本内核更新。
现在我的 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 提供的 .run 文件进行安装,并看到了以下内容:
我认为重要的部分是:
错误:无法找到当前正在运行的内核的内核源代码树。
然后我尝试在面板中切换并看到以下内容:
这肯定也发生在其他人身上,对吧?
我已经安装了内核头文件,以便让 NVidia 驱动程序正常工作:
sudo apt-get install linux-headers-$(uname -r)
我现在正在下载 Ubuntu 22.04 iso,制作 USB 映像并查看是否可以修复安装。
因此没有“修复”选项,但是当我运行 USB 记忆棒版本时,我可以使两个显示器恢复有效(高)分辨率。
这太荒谬了。这一切都是因为我接受了官方更新中的内核更新。哎呀!
明确的答案
我不得不再次安装 Ubuntu 22.04.1 LTS。我非常很幸运,因为我昨天刚刚对我的系统进行了完整备份。呼...非常幸运。
谨防!
我总是立即安装内核更新。现在,如果可以的话,我会等待安装它们。
恢复上一个内核
我还尝试恢复以前的内核。以下是我所做的选择的快照:
我尝试了每一个,但没有一个能让我回到一个好的位置。即使尝试了每一个,我仍然只有一个屏幕,并且它停留在 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 并重新启动。