从.pkg文件在安装后脚本中运行sudo命令(安装kext)

时间:2017-07-19 23:10:15

标签: macos kernel-module kernel-extension packagemaker

我使用enter image description here创建了一个将.kext文件放在/Library/Extensions中的安装程序。然后,我的post-install.sh文件尝试加载它:

#!/bin/bash

sudo kextload /Library/Extensions/mykext.kext

我测试了我的安装程序,但最后我失败了:

System Integrity Protection was disabled

但是,如果我在终端中运行kextstat | grep mykext,我可以看到我的kext实际上已成功加载并放置在其目标路径中。 (我事先删除并卸载了内核扩展,所以我知道安装正在运行)。

所以我的问题是:有没有办法诊断安装失败的原因?这只是因为证书签署吗?

值得注意的:

  • 我在timer时运行了这个(所以我可以在之前手动加载我的内核扩展后测试我的软件)

  • 我还没有签署Apple的证书

1 个答案:

答案 0 :(得分:1)

我能够通过Window>查看安装程序日志。显示安装程序日志。

我认为问题在于我指的是kext文件的符号链接,而不是它的真实路径。