¿Qué son exactamente estos "dominios" y "objetivos de servicio" y cómo los asocio con las listas para su uso por launchd?
OS X 10.10 introduce una nueva API launchctl
para administrar LaunchDaemons y lanzar plists. Los mensajes de registro y las páginas de manual sugieren que las claves como KeepAlive
y RunAtLoad
ya no deberían usarse y que los subcomandos enable
; %código%; y bootstrap
se deben usar con preferencia a kickstart
y load -w
Sin embargo, de las páginas man no queda claro cómo asociar un plist con el "dominio" y el "objetivo de servicio" de los que se habla y sin los cuales estos comandos no se pueden usar con los plists existentes que aparentemente eran suficientes para OS X 10.9
Por ejemplo [actualizado]: Una lista básica que estamos tratando de "lanzar"; aparentemente bootstrapped en el dominio "sistema" pero posteriormente no se reconoce en "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 unload -w
se queja cuando usamos launchctl -w load ...
con KeepAlive
que Este servicio está definido para ejecutarse constantemente y es inherentemente ineficiente. , por lo que estamos motivados a usar nueva interfaz.
No solo eso, tenemos problemas significativos con el uso excesivo del procesador que queremos controlar al proporcionar las palabras clave adecuadas según demanda, por lo que, nuevamente, estamos motivados a entender cómo interactuar con el nuevo lanzamiento. No es fácil con los documentos. como están de pie!