時々私のNVIDIAドライバ(MOKで署名されている)は私のデュアルブートコンピュータ(Ubuntu 22.04とWindows 11)にロードされません。同じ署名キーで同じドライバを再インストールして問題を解決しました。
署名キーは常に同じパスにあります(削除したり他の場所に移動したりしません)。
これは1〜2ヶ月ごとに発生します。この問題の原因は何ですか?
編集:今ドライバを再インストールしました(ステップ6:https://askubuntu.com/a/1049479)、再登録する必要はありません。
答え1
毎回一致する新しいカーネルモジュールのセットとともに、新しいカーネルパッケージを含むカーネルセキュリティアップデートを受け取ります。これが発生したときにNVIDIAカーネルモジュールを再構築するための自動化設定がないようです。
dkms
新しいカーネルイメージをインストールすると、サードパーティのカーネルモジュールを自動的に再構築できるパッケージがあります。dkms
パッケージマネージャ(たとえば、好みのGUIツールを使用)を使用してパッケージをインストールする必要がありますsudo apt install dkms
。または、NVIDIA提供のドライバインストーラを使用している場合は、インストーラ--dkms
のオプションを使用してください。
毎回同じMOKキーを使用している場合は、キー(再)インストールプロセスを実行する必要はありません。
Debian / Ubuntuツールを使用してMOKを作成した場合は、ディレクトリに2つのファイル(秘密鍵asと公開鍵as)が/var/lib/shim-signed/mok/
必要です。しかし、他の既知のパスには自己署名キーがあるので、それを使用できると言いました。MOK.priv
MOK.der
したがって、NVIDIAインストーラを使用している場合は、次のことを実行できます。
sudo ./NVIDIA-Linux-x86_64-<version number>.run --dkms \
--module-signing-secret-key=/var/lib/shim-signed/mok/MOK.priv \
--module-signing-public-key=/var/lib/shim-signed/mok/MOK.der
DKMSを使用して正常にインストールした後、コマンドはsudo dkms status
NVIDIAドライバモジュールが構築されている1つ以上のカーネルバージョンのリストを出力する必要があります。
nvidia, <driver version>, <kernel version>, x86_64: installed