1

在 Mavericks 和更早版本中,LimitLoadToSessionType 设置为 LoginWindow 的 LaunchAgent plist 将始终在 LoginWindow 中运行代理并将其持久保存到登录帐户会话中。现在在 Yosemite 中,如果您已将 LoginWindow 指定为 plist 中的唯一会话类型,则代理将运行并且仅在 LoginWindow 期间运行。

登录 OSX Yosemite 后如何保留 LoginWindow 代理?

我尝试过的修复:

- 除了 LoginWindow 之外还添加了 Aqua,但这不可行,因为我无法停止并再次启动代理。

- 调整其他键,例如 KeepAlive 等,但没有任何帮助。就好像 Apple 认为“哦,仅在 LoginWindow 之外持久化 LoginWindow 代理是一个错误,让我们修复它!”。

在这里的任何帮助将不胜感激,谢谢。

4

1 回答 1

0

这不是我理解的行为。如果您希望它在注销和登录时运行,您需要在数组中包含 LoginWindow 和 Aqua。但是,您应该知道它会杀死可执行文件并在登录时重新启动。这就是我记得它在 10.9 上的表现。听说10.10完全重写了launchd,不再为每个用户执行多个launchd进程,而是只有一个并且使用xpc(跨进程通信)。

请参阅此链接:http ://docs.macsysadmin.se/2014/pdf/Launchd_-_At_your_service.pdf

于 2014-11-20T00:09:02.983 回答