答案1
在 UEFI 又名 BIOS 设置中禁用安全启动,Nvidia 驱动程序将启动并运行。
看为什么安装第三方内核模块或内核升级后会出现“所需密钥不可用”的情况?解释为什么现在无法加载。
答案2
按照:https://linuxconfig.org/how-to-install-the-nvidia-drivers-on-ubuntu-19-10-eoan-ermine-linux你应该试试:
sudo ubuntu-drivers autoinstall
或者
sudo apt install nvidia-driver-435
然后
sudo reboot
验证使用情况:
lshw -numeric -C display
或者
ubuntu-drivers devices
答案3
您应该使用软件包维护者提供的 Nvidia 驱动程序版本来确保没有问题。这样做的最佳原因是apt
,Ubuntu 的软件包管理器可以解决软件包依赖关系/文件冲突。在 Ubuntu 中,由于 Nvidia 不是开源的(如果我没记错的话),因此它不作为核心软件包进行维护。幸运的是,Nvidia 有一个可用的卸载脚本,您可以使用它来删除它。
- 按照添加 Nvidia 驱动程序存储库的说明进行操作:
https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa
将 Linux 内核提供的 nouveau 模块列入黑名单。它们将覆盖您已安装的 Nvidia 驱动程序。Nouveau 是 Nvidia 显卡的开源驱动程序,虽然它们为致力于 FOSS 系统的用户提供了出色的服务,但它们的驱动程序性能不如 Nvidia 的专有驱动程序。这在很大程度上是由于 Nvidia 拒绝开源自己的软件。如果您不想读,请跳至下文。
如果您的卡支持 PCIe Gen 3.x,请启用它以进行优化。默认情况下,Nvidia 驱动程序设置为 PCIe Gen 2,以防止因运行不支持更高总线速度的卡而导致的任何永久性硬件损坏。如果您确实损坏了它并因为没有阅读而责怪我,请告诉我,因为那会很有趣。
重新制作 initramfs 并重启
要运行的命令:
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt install nvidia-driver-440
440 目前是最新版本,您可以在上面链接的网站上自行检查。这将安装大量软件包。请花时间阅读并了解 dkms 的功能。应用程序 nvidia-settings 也会有所帮助。
$ sudo apt autoremove
$ sudo -i
# echo -e "blacklist nouveau\nblacklist nvidiafb\noptions nvidia NVreg_EnablePCIeGen3=1" >> /etc/modprobe.d/nvidia-only.conf
# update-initramfs -u -k all
我们选择将开源驱动程序列入黑名单nouveau
,以便让 Nvidia 控制帧缓冲区。nvidiafb
实际上是一个内核模块,旨在与开源驱动程序或较旧的 Nvidia 卡一起使用。仅供参考,nvidia-drivers 提供自己的帧缓冲区。您可以使用检查其名称sudo cat /proc/fb
。
nvidia-settings
将为您提供选择性能的选项,这将使您的 Nvidia 卡在所有图形相关方面都优先于 i915(您的 CPU 的集成 GPU)。这可能是最重要的步骤之一,您可能需要安装 Nvidia 专有驱动程序、重新启动、设置为性能,然后再次重新启动。
nvidia-smi
由于 nouveau 已加载,因此无法加载。
您不需要禁用安全启动,因为:
Ubuntu 发行版内核不强制对模块进行有效签名(未设置 CONFIG_MODULE_SIG_FORCE)
你已经证明它已经加载