¿Qué son exactamente estos "dominios" y "objetivos de servicio" y cómo los asocio con las plantillas para el uso de los lanzamientos?
OS X 10.10 introduce un nuevo launchctl
API para gestionar los LaunchDaemons y los plists de lanzamiento. Los mensajes de registro y las páginas de manual sugieren que las teclas como KeepAlive
y RunAtLoad
ya no debe usarse y que los subcomandos enable
; bootstrap
y kickstart
debe utilizarse en lugar de load -w
y unload -w
Sin embargo, no está claro en las páginas de manual cómo asociar un plist con el "dominio" y el "objetivo de servicio" del que habla y sin el cual estos comandos no pueden ser usados con plists existentes que aparentemente eran bastante suficientes para OS X 10.9
Por ejemplo, [actualizado]: Un plan básico que estamos tratando de "lanzar"; aparentemente se ha lanzado en el dominio del "sistema", pero posteriormente no se reconoce en el "sistema".
# pwd
/Library/LaunchDaemons
# cat com.iainhouston.django.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN
http://www.apple.com/DTDs/PropertyList-1.0.dtd >
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.iainhouston.django</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/virtualenvs/django.iainhouston.com/bin/gunicorn</string>
<string>--bind=127.0.0.1:49202</string>
<string>--workers=2</string>
<string>superlists.wsgi:application</string>
</array>
<key>Disabled</key><false/>
</dict>
</plist>
# launchctl bootstrap system com.iainhouston.django.plist
/Library/LaunchDaemons/com.iainhouston.django.plist: Service is disabled
# launchctl enable system/com.iainhouston.django.plist
# launchctl kickstart system/com.iainhouston.django.plist
Could not find service "com.iainhouston.django.plist" in domain for system
Motivación
El registro del sistema registra que launchctl -w load ...
se queja cuando usamos KeepAlive
con RunAtLoad
que Este servicio se define como de funcionamiento constante y es inherentemente ineficiente. así que estamos motivados para usar la nueva interfaz.
No sólo eso, tenemos problemas significativos con el uso excesivo del procesador que queremos controlar proporcionando las palabras clave adecuadas bajo demanda, así que, de nuevo, estamos motivados para entender cómo interactuar con el nuevo lanzamiento .... no es fácil con los documentos tal y como están!