¿Qué hace realmente la descarga de launchctl?

4

Al ejecutar launchctl unload some.plist , ¿qué es este comando traducido específicamente a, en términos de comandos UNIX, etc.

No hay nada en los archivos .plist que especifique ninguna "línea de comando para ejecutar cuando el usuario especifica descargar", ¿entonces MacOS simplemente envía una señal kill al proceso? ¿O qué hace?

    
pregunta forthrin 05.08.2018 - 15:29

2 respuestas

8

SIGTERM

El comando

launchd's unload envía una señal SIGTERM a los procesos secundarios del trabajo asociado.

Procesos separados

Si un proceso iniciado por un trabajo launchd se ha separado de su proceso principal, entonces unload no afectará ese proceso. Este es a menudo el caso de procesos demonizados .

Código fuente original

Puede descargar e inspeccionar el código fuente original de launchd . launchd se ha reescrito desde entonces y es propiedad de Apple, pero el original documenta el comportamiento previsto en unload .

    
respondido por el Graham Miln 05.08.2018 - 16:14
2

Para responder mejor a esta pregunta, podemos ver dos cosas: los comandos UNIX y lo que está en una lista.

Comenzando con una .plist, el siguiente código suele estar allí

<?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>CFBundleExecutable</key>
  <string>someApplication</string>
</dict>
</plist>

El CFBundleExecutable identifica el nombre del archivo ejecutable principal del paquete. Para una aplicación, este es el ejecutable de la aplicación. Para un paquete cargable, es el binario que se cargará dinámicamente por el paquete.

Por lo tanto, escribir launchctl unload some.plist le dirá a MacOS la clave para localizar el archivo ejecutable del paquete y "descargarlo" o esencialmente eliminarlo del sistema. Esto lo dice a nivel de aplicación .

Cuando se usa un comando UNIX como kill <PID> , se refiere a un proceso específico.

Analizando qué es un Proceso frente a una Aplicación aquí es una buena lectura


Puede leer más sobre lo que hay en .plists y cómo funcionan en Apple

    
respondido por el akostar 05.08.2018 - 15:57

Lea otras preguntas en las etiquetas