Secure BootのままNvidiaドライバをaptからインストールする【Ubuntu 16.04】

July 24, 2021, 9:39 a.m. edited July 24, 2021, 4:01 p.m.

#Linux 

最近の Ubuntu は Secure Boot が ON になっていると署名のないドライバを使うことができない。そのため、

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-430

としたときに Secure Boot が ON になっていると、 OFF にするようメッセージが出て、一時的なパスワード入力を求められた後に再起動すると、 Secure Boot を OFF にする設定画面が現れる(この中でそのパスワードを使う)1

しかしながら、 Secure Boot を切りたくないという人情もある。そこで、 apt によりインストールした nvidia-430 を Secure Boot ON の状態で用いる方法を調べた。

基本的には https://askubuntu.com/a/769840 に従う。このうち 2. Sign the module で /path/to/module がわからん、となるが、これは

modinfo -n nvidia

により得ることができる。ただし、この nvidia.ko があるディレクトリには他にも nvidia-なんたら.ko のような名前のモジュールがいくつかあるので、それらすべてに 2. Sign the module をしておくのが良さそう。(用いる .priv.der ファイルはすべて共通のものを私は使った)

そうして、 4. の項目まで終えれば Secure Boot ON のままでも /proc/driver/nvidia が存在し、そして nvidia-smi が使えるはず。


  1. 間違って何もせずそのまま Ubuntu を立ち上げてしまった場合は sudo mokutil --disable-validation で再度一時的なパスワードを入力してから sudo reboot することで再びその設定画面を見ることができる(ちなみに Secure Boot を ON にする画面がほしい場合は sudo mokutil --enable-validation からの sudo reboot)