セキュアブートを有効にしたい場合、以前に投稿されたソリューションはおそらく機能しません。代わりに、セキュアブートを有効にしておき、次のことを行いました。
署名用のキーのセットを作成します。
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive common name/"
キーをインポートします。ここでパスワードの入力を求められますが、これは覚えておく必要があります。BIOSは、再起動後にパスワードの入力を求めます。
sudo mokutil --import MOK.der
再起動:
reboot
BIOSからパスワードの入力を求められているはずです。それが機能すると仮定して、MOKが正常に登録されたことをテストする必要があります。
mokutil --test-key MOK.der
これで、MOKが登録されました。WiFi用のドライバーをインストールする必要があります。
git clone https://github.com/lwfinger/rtlwifi_new.git
cd rtlwifi_new
git checkout extended
sudo make install
カーネルに追加できるドライバーはありますが、セキュアブートが有効になっているため、追加する前にドライバーに署名する必要があります。そのため、以前に生成したキーを使用してドライバーに署名します。
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n rtlwifi)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n rtl_pci)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n btcoexist)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n rtl8723-common)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n phydm_mod)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n rtl8723de)
最後に、rtl8723de
この順序でドライバーをカーネルに追加します
sudo modprobe -r rtlwifi
sudo modprobe rtlwifi
sudo modprobe -r rtl_pci
sudo modprobe rtl_pci
sudo modprobe -r btcoexist
sudo modprobe btcoexist
sudo modprobe -r rtl8723-common
sudo modprobe rtl8723-common
sudo modprobe -r phydm_mod
sudo modprobe phydm_mod
sudo modprobe -r rtl8723de
sudo modprobe rtl8723de
補足説明:最終ステップでは、次のように書くだけで逃げることができる場合があります。
sudo modprobe -r rtl8723de
sudo modprobe rtl8723de
modprobe
rtl8723de
は、どのドライバーが依存しているかを知っているため、rtl8723de
依存するすべてのものをとともに追加できるはずですrtl8723de
。ただし、この方法でドライバーを追加しなかったため、このオプションが機能することを保証できません。
出典:1、2、3