【发布时间】:2013-07-31 13:37:36
【问题描述】:
我需要确定在我的 OSX 上禁用了哪些代理和守护程序。每个进程都有带参数的 plist 文件。我认为“禁用”键对此负责。但并非所有代理/守护进程都具有此值。因此,如果属性列表不包含此参数,是否意味着它已禁用或启用?我没有找到有关此项目默认值的任何信息。
请提供证明它的苹果文档的参考。
【问题讨论】:
标签: objective-c macos daemon
我需要确定在我的 OSX 上禁用了哪些代理和守护程序。每个进程都有带参数的 plist 文件。我认为“禁用”键对此负责。但并非所有代理/守护进程都具有此值。因此,如果属性列表不包含此参数,是否意味着它已禁用或启用?我没有找到有关此项目默认值的任何信息。
请提供证明它的苹果文档的参考。
【问题讨论】:
标签: objective-c macos daemon
每个 LaunchDaemon 文件中的“已禁用”键可以被 /private/var/db/launchd.db/com.apple.launchd/overrides.plist 中的条目覆盖,并且 /private 中的 LaunchAgents 也有类似的系统/var/db/launchd.db/com.apple.launchd.peruser.userID/overrides.plist。我认为 Apple 没有在任何地方记录这一点,这意味着您不需要直接与这些文件进行交互,只需使用 launchctl。这也意味着它们可能会发生变化(即它并不总是以这种方式工作,并且可能会在更高版本的 OS X 中更改,恕不另行通知)。此外,LaunchDaemons 的文件只能由 root 读取。
【讨论】: