Ubuntu18.04+virtualboxでPKCS#7 signature not signed with a trusted key

問題点

最近、Ubuntu18.04をupgradeしたら、plymouthのスプラッシュスクリーンに下記のようなエラーが表示されるようになった。VirtualBoxは普通にリポジトリからaptでインストールしたものを使用していた。VirtualBoxを削除するとメッセージは出なくなるので、原因はVirtualBoxだと思う。

[    6.520533] PKCS#7 signature not signed with a trusted key
[    6.520996] VBoxNetFlt: Successfully started.
[    6.522276] PKCS#7 signature not signed with a trusted key
[    6.522450] VBoxNetAdp: Successfully started.

解決策(後に失敗する)

なんか、よくわからないけど、VirtualBox関連ドライバーの署名の問題らしく、既存のVirtualBoxをアンインストールして、最新(6.1)のVirtualBoxをOracleからダウンロードしてインストールしたら出なくなった。

再発

2020/02/02
やっぱりよくわからない解決方法は再発する。また出始めた。特に実害があるわけではないし、正直もう面倒くさいので、表示するログレベルを重要度高いのだけにすることにした。個人で使うノートパソコンなので、今回はこれで十分だと思う。

メッセージのログレベルを確認

まずは問題のメッセージのログレベルを確認する。-lオプションでログレベル指定して表示していくと、今回のメッセージは3のときに表示された。

$ dmesg -l 3

現在の設定を確認

下記コマンドのファイルが設定内容。自分の環境では「4 4 1 7」だった。この値はドキュメントによると下記の説明らしい。
– console_loglevel: これよりも優先度の高いメッセージがコンソールに出力される
– default_message_loglevel: 明示的な優先度のないメッセージは、この優先度で出力される
– minimum_console_loglevel: console_loglevelを設定できる最小(最高)値
– default_console_loglevel: console_loglevelのデフォルト値
なので、1番目と2番目の4のことろを3にすれば良さそうだ。

$ cat /proc/sys/kernel/printk

メッセージを非表示に

ログレベル3をいちいち表示しない設定にするので、表示するログレベルを3未満に設定する。Kernelからのエラー(主にハードウェア)が自動的に表示されない設定になるので、自己責任で定期的にログ確認したほうが良いと思う。Windowsでもログの内容は見ないと分からないんだから、クライアント用途ならこれで良いと思った。

kernel.printk = 3 3 1 7