Debian 11 安装Nvidia闭源驱动

简介目录通过APT安装Nvidia驱动为Nvidia驱动注册SecureBoot参考文档本人的系统是Debian11,最近一阵子在捣鼓用apt安装英伟达的闭源驱动,同时支持SecureBoot,查阅了DebianWiki之类的资料之后,在这里整理一下。通过APT安装Nvidia驱动首先,需要确保你的Debian系统添加了非开源软件的apt"

标签:11 Secure Boot apt MOK 闭源 Nvidia Debian

  1. 通过APT安装Nvidia驱动

首先,需要确保你的Debian系统添加了非开源软件的apt源。

如果没有,请修改/etc/apt/sources.list添加。

随后输入:

sudo apt update
apt install nvidia-driver firmware-misc-nonfree

之后依照提示操作继续,结束后重启计算机即可。

  1. 为Nvidia驱动注册Secure Boot

如果你的电脑不支持或未打开Secure Boot,那么你可以忽略次步骤。

安装必要的工具:

sudo apt install mokutil

生成签署密钥:

openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Nvidia_Driver/"

将签署密钥添加到内核中:

for i in $(ls /lib/modules/$(uname -r)/updates/dkms/*.ko); do sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file** sha256 ./MOK.priv ./MOK.der $i; done

使用mokutil工具注册:

sudo mokutil --import MOK.der

重启电脑注册:

重启电脑之后,会出现蓝色的界面,按回车进入后,选择:

Enroll MOK --> Continue之后会提示你输入密码,输入完成后选择Reboot

参考文档
NvidiaGraphicsDrivers - Debian Wiki

MOK - Machine Owner Key - Debian Wiki

Debian 11 VirtualBox 踩坑实录

需要指出Secure Boot如果启用而不注册在nvdia下会存在挂起后无法唤醒的黑屏情况。所以如果是Secure Boot第2步必须操作。
文章摘录自https://xknote.com/blog/344431.html,感谢原作者。
但是需要支出原文中:

for i in $(ls /lib/modules/$(uname -r)/updates/dkms/vbox*.ko); do sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file** sha256 ./MOK.priv ./MOK.der $i; done

在这里是会提示没有Vbox.ko的,这里如果激进一点改为.ko即可。