2 votos

launchd mantiene reiniciar mi binarios en /Library/PrivilegedHelperTools

Estoy buscando para instalar un privilegiado herramienta de ayuda el uso de SMJobBless.
Mi plist sólo contiene la MachServices clave y RunAtLoad clave. El RunAtLoad está establecido a true como quiero ser lanzado automáticamente después de la instalación.

Ahora, el problema es que una vez que la herramienta de ayuda se instaló y puso en marcha y se completa su trabajo con éxito - se pone relanzado y esto sigue sucediendo una y otra vez.

Original launchd Boleto del Trabajo

<?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">  
<key>Label</key>  
<string>com.ak.SMJobBlessHelper</string>  
<key>MachServices</key>  
<dict>  
<key>com.ak.SMJobBlessHelper.mach</key>  
<true/>  
</dict>  
<key>ProgramArguments</key>  
<array>  
<string>/Library/PrivilegedHelperTools/com.ak.SMJobBlessHelper</string>  
</array>  
<key>RunAtLoad</key>  
<true/>  
</plist>

He intentado varias cosas para que deje de lanzar de nuevo, pero en vano:

  1. Trató de agregar KeepAlive a false en el plist.
  2. Trató de agregar KeepAlive como un diccionario con la clave SuccessfulExit a false.
  3. Trató de hacer que mi aplicación sueño oculta veces antes de dejar de fumar como dormir durante 5 minutos, 10 minutos, etc. pero aún así se puso en marcha de nuevo.

Que básicamente han agotado las ideas, la quiero para iniciar sólo cuando me pregunte y no de forma automática y que también de nuevo y de nuevo.

Por favor, ayudar. Muchas gracias.


Sistema operativo: Mac OS X 10.8.4 12E55
Xcode: 4.6.2 (4H1003)

1voto

Steve Evans Puntos 155

El launchd boleto del trabajo en la pregunta está mal formado; el objeto root debe ser un dict:

<?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>
   ...
</dict>
</plist>

Suponiendo que esto es un copiar y pegar de error, ¿con qué rapidez su com.ak.SMJobBlessHelper completa?

Algunos launchd configuraciones requieren el proceso de permanecer en funcionamiento durante un mínimo de 30 segundos – los demás launchd tendrá en cuenta el proceso de como se estrelló y automáticamente relanzarla.

¿Su com.ak.SMJobBlessHelper se ajusten a los requisitos establecidos en el launchd documentación?

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