[launchd-dev] launchctl unload not working
Kevin Van Vechten
kvv at apple.com
Thu Nov 29 17:14:11 PST 2007
On Nov 29, 2007, at 3:50 PM, Hamish Allan wrote:
> A quick query: do the five sessiontypes (Aqua, LoginWindow,
> Background, StandardIO and System) correspond to the five locations
> (~/Library/LaunchAgents, /Library/LaunchAgents,
> /Library/LaunchDaemons, /System/Library/LaunchAgents,
> /System/Library/LaunchDaemons)?
No, it's not a direct mapping.
> If not, how should we interpret the meaning of the sessiontypes?
<http://developer.apple.com/technotes/tn2005/tn2083.html#TABLAUNCHAGENTSUBTYPES
>
- LaunchDaemons are always loaded exclusively by the root launchd.
- LaunchAgents are typically loaded by the per-user launchd (unless
you log in as root, or have a "LoginWindow" agent as described below).
Here's a summary of sessions:
- LaunchDaemons are only loaded into the "System" session of the root
launchd. No per-user launchd has a "System" session.
- Unless otherwise specified by the LimitLoadToSessionType key in the
plist, LaunchAgents are loaded into the "Aqua" session.
- The "Aqua" session is the same session all GUI Applications are
executed in.
- Logins via SSH, telnet, and others are executed in a "StandardIO"
session.
- Each user is given a single "Background" session. Jobs in the
"Background" session may live longer than the last logout of the user.
- The "LoginWindow" session is active when the system is at the login
window. It disappears once a user as logged in.
The list of directories is the result of:
{LaunchDaemons, LaunchAgents} x {~/Library, /Library, /System/Liberary}
However, ~/Library/LaunchDaemons is omitted because there is not yet a
current user when the root launchd starts, and per-user launchd
instances never execute daemons.
- Kevin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-dev/attachments/20071129/12eb7f08/attachment.html
More information about the launchd-dev
mailing list