4 votos

¿Cargar automáticamente LaunchDaemon?

Escribí un pequeño script para actualizar automáticamente mi Ubicación de la Red basado en un par de condiciones, y he acoplado eso con un plist launchd para que se ejecute cada par de minutos.

Sin embargo, me he dado cuenta de que mi plist launchd no parece cargarse cuando mi ordenador se reinicia. Mi plist está en ~/Library/LaunchDaemons y es bastante sencillo:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.davedelong.location-updater</string>
    <key>Program</key>
    <string>/path/to/my/location_updater.rb</string>
    <key>StartInterval</key>
    <integer>180</integer>
</dict>
</plist>

Mi LaunchDaemons tiene la carpeta esperada 700 permisos, y ejecutando launchctl load con mi plist hace que las cosas funcionen bien. Es que cuando reinicio, no se carga.

Tenía la impresión de que todo en ~/Library/LaunchDaemons y ~/Library/LaunchAgents fue cargado automáticamente por launchd. ¿No es este el caso? Si este es el caso (y creo que lo es), entonces ¿por qué no se carga mi plist?

7voto

Cody Brocious Puntos 24042

~/Library/LaunchDaemons no es una ubicación válida ni para los agentes de lanzamiento ni para los demonios de lanzamiento. Usted está malinterpretando la terminología. Los LaunchDaemons son procesos de todo el sistema, mientras que los LaunchAgents se ejecutan por usuario. De la página man de launchd:

~/Library/LaunchAgents         Per-user agents provided by the user.
/Library/LaunchAgents          Per-user agents provided by the administrator.
/Library/LaunchDaemons         System-wide daemons provided by the administrator.
/System/Library/LaunchAgents   Per-user agents provided by Mac OS X.
/System/Library/LaunchDaemons  System-wide daemons provided by Mac OS X.

Mueve tu plist a ~/Library/LaunchAgents y debería funcionar.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X