launchd(8) BSD System Manager's Manual launchd(8)NAMElaunchd — System wide and per-user daemon/agent manager
SYNOPSISlaunchd [-d] [-D] [-s] [-S SessionType] [-- command [args ...]]
DESCRIPTIONlaunchd manages processes, both for the system as a whole and for indi‐
vidual users. The primary and preferred interface to launchd is via the
launchctl(1) tool which (among other options) allows the user or adminis‐
trator to load and unload jobs. Where possible, it is preferable for
jobs to launch on demand based on criteria specified in their respective
configuration files.
During boot launchd is invoked by the kernel to run as the first process
on the system and to further bootstrap the rest of the system.
You cannot invoke launchd directly.
ENVIRONMENTAL VARIABLES
LAUNCHD_SOCKET
This variable is exported when invoking a command via the
launchd command line. It informs launchctl how to find the cor‐
rect launchd to talk to.
NOTES
In Darwin, the canonical way to launch a daemon is through launchd as
opposed to more traditional mechanisms or mechanisms provided in earlier
versions of Mac OS X. These alternate methods should be considered depre‐
cated and not suitable for new projects.
In the launchd lexicon, a "daemon" is, by definition, a system-wide ser‐
vice of which there is one instance for all clients. An "agent" is a ser‐
vice that runs on a per-user basis. Daemons should not attempt to display
UI or interact directly with a user's login session. Any and all work
that involves interacting with a user should be done through agents.
If you wish your service to run as a certain user, in that user's envi‐
ronment, making it a launchd agent is the ONLY supported means of accom‐
plishing this on Mac OS X. In other words, it is not sufficient to per‐
form a setuid(2) to become a user in the truest sense on Mac OS X.
FILES
~/Library/LaunchAgents Per-user agents provided by the user.
/Library/LaunchAgents Per-user agents provided by the adminis‐
trator.
/Library/LaunchDaemons System-wide daemons provided by the admin‐
istrator.
/System/Library/LaunchAgents Per-user agents provided by Mac OS X.
/System/Library/LaunchDaemons System-wide daemons provided by Mac OS X.
SEE ALSOlaunchctl(1), launchd.plist(5),
Darwin 1 May, 2009 Darwin