macos - 在 macOS Catalina 中将未签名的 kext 列入白名单
问题描述
我最近买了一个旧的 Alesis io26 Firewire Audio 接口。上一个驱动程序版本仅适用于 Mountain Lion 和更早版本。一段时间后,我设法在 Catalina 上安装了上述驱动程序,方法是手动将 midi 驱动程序拖到 /Library/Audio/MIDI 驱动程序中,并通过 KEXT droplet 将内核扩展安装到 /System/Library/Extensions 中。我现在遇到的问题是,如果我的 SIP 被禁用,我的 mbpro 只能识别接口。我听说驱动程序没有签名,这就是 SIP 阻止它工作的原因。所以作为一个菜鸟,我怎么能以某种方式将该 kext 列入白名单,这样我就不必每次想要录制一些音频时都进入恢复模式并禁用 SIP。
解决方案
执行此操作的 3 种“正确”方法可能不太可能:
- 让原开发者签署kext
- 以某种方式说服 Apple 将其添加到 macOS 的内置白名单中
- 如果你自己有 kext 签名证书,你可以签名。(显然,Apple 不再发布这些。)
在实践中你能做的最好的可能是只使用命令禁用 SIP 的 kext 签名部分
csrutil enable --without kext
代替
csrutil disable
当然,这会使您的系统容易受到未签名的 kexts 的攻击,尽管我没有听说过任何专门针对禁用 kext 签名的 Mac 的恶意软件。
推荐阅读
- java - 如何将数组列表从内部类传递给另一个已经启动的类?
- html - 图像未在容器中缩放
- tizen - bt_adapter_le_start_scan() 在 tizen 可穿戴本机应用程序中也扫描 BLE 设备以外的设备
- ruby-on-rails - Rails 使用时间对象查询,不返回特定于日期的对象
- javascript - 如何在没有 ID 或类的情况下访问 html 元素标签?
- javascript - 刷新页面后保持下拉值被选中
- c++ - 如何通过迭代器访问向量中的嵌套对?
- python - 使用 ASP .NET MVC 在文件 .py 中调用外部 python 函数
- c# - mysql c#中的图像重复#
- python-3.x - Djikstra 在 python3 中有 2 个因子