Catalinaへのアップグレード後、再起動の度に警告が表示されるようになった。
レガシーシステム機能拡張に対する警告が表示され、煩わしく感じていました。
カーネル機能拡張は/Library/StagedExtensions/Library/Extensionsなどに配置されています。この.kextの削除方法について備忘も兼ねて書いておきます。
Contents:
レガシーシステム機能拡張に対する警告表示
この警告表示をみて、”Mattias Nissler”ってなんだ?って話なんですが、調べたところ2015年ごろにVPN接続のために入れたTunTapの開発者の方の名前でした。
TunTapに原因があると分かったところで、さてどうするか…。
「/Library/StagedExtensions/Library/Extensions」に配置されたファイルは、セーフブートでも削除できず、SIPを無効にしなければ削除できませんでした。
SIPとはSystem Integrity Protectionの略で、Mac上の保護されたファイルやフォルダを改ざんしようとする悪意を持ったプログラムからデータを守るものです。
SIPを無効化する方法
まずは、リカバリモードで起動します。
起動時に「⌘command + r」をAppleマークが出るまで押し続けます。
リカバリモードで起動したら、ユーティティメニューからターミナルを選択します。
ターミナルが立ち上がったら、以下を入力して、SIPを無効にします。
csrutil disable
SIPの状態を確認するには、以下コマンドで確認が可能です。
csrutil status
SIPを有効にする方法は以下です。カーネル機能拡張の削除後はSIPを有効に戻しましょう。
csrutil enable
カーネル機能拡張(.kext)を削除
SIPを無効にしたら、再起動して不要なカーネル機能拡張を削除します。
今回のケースでは以下のような感じです。
sudo rm -fr /Library/StagedExtensions/Library/Extensions/tun.kext
sudo rm -fr /Library/StagedExtensions/Library/Extensions/tap.kext
削除後に、SIPを再度有効にします。