Gestión de scripts con launchd
macOS utiliza el proceso launchd
para gestionar daemons y agentes, y tú puedes usarlo para ejecutar scripts de shell. No interactúas directamente con launchd
, sino que utilizas la herramienta launchctl
para cargar o descargar los daemons y agentes de launchd
.
Durante el arranque del sistema, launchd
es el primer proceso que el kernel ejecuta para configurar el ordenador. Si quieres ejecutar un script de shell como un daemon, deberías iniciarlo con launchd
. Apple puede retirar otros mecanismos de arranque de daemons y agentes a su entera discreción.
Mira los siguientes archivos de configuración para hacerte una idea de los distintos daemons y agentes que gestiona launchd
:
Carpeta | Uso |
---|---|
/Sistema/Biblioteca/LaunchDaemons/ | Daemons de sistema proporcionados por Apple |
/Sistema/Biblioteca/LaunchAgents/ | Agentes proporcionados por Apple que se aplican en función del usuario, haya iniciado sesión o no |
/Biblioteca/LaunchDaemons/ | Daemons de sistema de otros desarrolladores |
/Biblioteca/LaunchAgents/ | Agentes proporcionados por otros desarrolladores que se aplican en función del usuario, haya iniciado sesión o no |
~/Biblioteca/LaunchAgents/ | Agentes de otros desarrolladores que se aplican únicamente al usuario que ha iniciado sesión |
Para obtener más información acerca de launchd
, consulta las páginas “man” de launchd
y launchctl
. Consulta también la Technical Note TN2083: Daemons and Agents que encontrarás en la macOS Developer Library.