Управление скриптом с помощью launchd
Для управления демонами и агентами операционная система macOS использует процесс launchd
, который Вы можете использовать для запуска shell-скриптов. Вам не нужно напрямую взаимодействовать с launchd
; для загрузки и выгрузки демонов и агентов launchd
Вам необходимо использовать инструмент launchctl
.
launchd
— это первый процесс, запускаемый ядром во время загрузки системы для настройки компьютера. Если Вы хотите запускать shell-скрипт как демон, его должен запускать процесс launchd
. Другие способы запуска демонов и агентов подлежат удалению на усмотрение компании Apple.
Чтобы получить общее представление о различных демонах и агентах, управляемых launchd
, см. следующие файлы конфигурации:
Папка | Назначение |
---|---|
/Система/Библиотеки/LaunchDaemons/ | Системные демоны компании Apple |
/Система/Библиотеки/LaunchAgents/ | Агенты компании Apple, применяемые ко всем пользователям по отдельности |
/Библиотеки/LaunchDaemons/ | Системные демоны сторонних разработчиков |
/Библиотеки/LaunchAgents/ | Агенты сторонних разработчиков, применяемые ко всем пользователям по отдельности |
~/Библиотеки/LaunchAgents/ | Агенты сторонних разработчиков, применяемые только к текущему пользователю |
Подробную информацию о launchd
см. на man-страницах launchd
и launchctl
. Также см. техническую заметку по демонам и агентам Technical Note TN2083: Daemons and Agents в библиотеке разработчиков macOS.