modprobe wireguard
rootでログインしようとしましたが失敗しました。
modprobe: ERROR: could not insert 'wireguard': Operation not permitted
詳細を追加すると、1行がさらに表示されます。
[root@localhost ben]# insmod /lib/modules/5.2.11-100.fc29.x86_64/extra/wireguard.ko.xz
insmod: ERROR: could not insert module /lib/modules/5.2.11-100.fc29.x86_64/extra/wireguard.ko.xz: Operation not permitted
dkmsはエラーなしでうまく動作します。私もselinuxを無効にしましたが、違いはありませんでした。ログには何も表示されませんjournalctl
。
マニュアルページを閲覧し、インターネット検索しても結果が出ませんでした。
私は以下でこの便利な内容を見つけましたdmesg
。
Lockdown: modprobe: Loading of unsigned module is restricted; see man kernel_lockdown.7
ただし、マニュアルページは存在しません。
どのようにデバッグできますか?次はどこに行くべきかについてのアドバイスはありますか?
答え1
ついに何かを見つけました。それ「機能」のようです。UEFIセキュアブートが有効になっていると(現在有効になっている)、署名されていないコードをカーネルにロードできません。
モジュールをロードするには、sys-rqを介してカーネルロックを無効にします。
# echo 1 > /proc/sys/kernel/sysrq
# echo x > /proc/sysrq-trigger
それはmodprobe
うまくいきます:
modprobe wireguard
詳細については、次を参照してください。
答え2
私のFedora 31ディストリビューションはechoを許可しませんsysrq
。 Arch Linux Wikiでは、Alt++ PrtSc(キーボードの一部であるx
ノートブック)を使用することをお勧めします。Fnロックが正常に無効になり、WireGuardが正常にロードされました。私はそれをインストールして+代替品akmod
としてmodprobe wireguard
機能しました。 (Red Hatのマニュアルには物理的に接続されたキーボードで押す必要があるとされています。)SysRqx
答え3
「OSタイプ」BIOS設定をWindows UEFIから「その他OS」に変更し、AMI BIOSでAsus ProArt B550 Creatorを実行しています。魔法のSysRqは必要ありません。
https://www.techpowerup.com/review/asus-proart-b550-creator/images/bios_55-copy.jpg
答え4
私の問題は、通常、署名されたCentos 7.x用のOSモジュールオーバーレイ(コンパイル済みモジュールではない)をロードすることです。また、セキュアブートは有効になっていません(mokutilでは、「EFI変数はこのシステムではサポートされていません」と言います)。