macOS Mojave无法使用Swift 4找到/ var/db/DetachedSignatures

Mag*_*gno 10 macos profiler system swift

我对High Sierra没有这样的错误,现在使用Mojave我的应用程序完成了Swift 4发出此错误.当我尝试通过调用获取软件信息时会发生这种情况:/ usr/sbin/system_profiler SPApplicationsDataType

我的应用程序不会失败并且有效,但我注意到它会在运行时暴露此错误:

system_profiler [2052:52918] [logging-persist] os_unix.c:42249:(0)open(/ var/db/DetachedSignatures) - 未定义错误:0

我想它与代码签名有关,但我不知道如何处理,也许是一个错误,因为/ var/db中没有任何名为DetachedSignatures的文件

Joh*_*ger 6

os_unix.c:37227:(21)seekAndRead(/ var / db / DetachedSignatures)-是目录

sudo touch /var/db/DetachedSignatures
Run Code Online (Sandbox Code Playgroud)

这解决了我机器上的问题。


Jen*_*fke 6

这似乎是在某些操作期间由安全框架记录的;当我的应用程序调用 SecKeyGeneratePair 时,我总是看到它。由于一切正常,我认为这只是噪音。(还有其他例子;Apple 的安全工程师似乎不喜欢在他们的生产代码中留下嘈杂但无害的日志消息。)

我不建议尝试创建 DetachedSignatures 文件!它显然被操作系统用于某些事情,只是将一个空文件推到那里,或者从其他地方复制一个,可能会在以后导致问题。


小智 1

我遇到了同样的问题,我从其他人的 MacBook 复制了 DetachedSignatures 文件并将其放在我的 iMac 上的 /var/db 路径下。它解决了问题。不知道为什么有些 mac 没有这个 DetachedSignatures 文件。互联网上没有太多有用的解释。

  • 从“其他人的 MacBook”复制一些与签名相关的文件?是的,这可能会出什么问题。 (11认同)
  • 如果您无法使用另一台笔记本电脑,您有什么建议?您可以共享该文件或指向示例文件吗?我研究了分离签名和 gpg,但我不相信创建“.sig”文件的“--detach-sign”参数是我们在这里需要做的 (2认同)