Gestion de scripts avec launchd
macOS utilise le processus launchd
pour gérer les démons et les agents, et vous pouvez l’utiliser pour exécuter vos scripts shell. N’interagissez pas directement avec launchd
; utilisez plutôt l’outil launchctl
pour charger et décharger des daemons et des agents launchd
.
Pendant le démarrage du système, launchd
est le premier processus exécuté par le noyau pour configurer l’ordinateur. Si vous voulez que votre script shell soit exécuté en tant que démon, celui-ci doit commencer par launchd
. D’autres mécanismes de démarrage de démons et d’agents peuvent être supprimés par Apple, à sa seule discrétion.
Vous pouvez aussi découvrir les différents démons et agents gérés par launchd
en consultant ces fichiers de configuration :
Dossier | Utilisation |
---|---|
/Système/Bibliothèque/LaunchDaemons/ | Démons système fournis par Apple |
/Système/Bibliothèque/LaunchAgents/ | Agents fournis par Apple applicables à tous les utilisateurs, par utilisateur |
/Bibliothèque/LaunchDaemons/ | Démons système tiers |
/Bibliothèque/LaunchAgents/ | Agents tiers applicables à tous les utilisateurs, par utilisateur |
~/Bibliothèque/LaunchAgents/ | Agents tiers applicables uniquement à l’utilisateur connecté |
Pour en savoir plus sur launchd
, consultez les pages man launchd
et launchctl
. Consultez également la note technique TN2083 sur les démons et les agents (en anglais) dans la bibliothèque des développeurs macOS.