1 votos

Reconfiguración de un trabajo launchd

Quiero configurar un launchd daemon para ejecutar un escaneo de virus diariamente. He escrito un .plist y lo cargamos manualmente con launchctl load pero parece que no funciona. Quería modificarlo para intentar depurar el motivo. Sin embargo, no parece ser modificable.

Esta es la salida de sudo launchctl list org.macports.clamscan :

{
        "LimitLoadToSessionType" = "System";
        "Label" = "org.macports.clamscan";
        "TimeOut" = 30;
        "OnDemand" = true;
        "LastExitStatus" = 19968;
        "Program" = "clamscan";
        "ProgramArguments" = (
                "clamscan";
                "--suppress-ok-results";
                "-l";
                "/var/log/clamscan.log";
                "-r";
                "/Users";
        );
};

He intentado descargarlo para editarlo y volver a cargarlo pero parece que no funciona:

$ sudo launchctl unload org.macports.clamscan
Password:
$ sudo launchctl list org.macports.clamscan
{
        "LimitLoadToSessionType" = "System";
        "Label" = "org.macports.clamscan";
        "TimeOut" = 30;
        "OnDemand" = true;
        "LastExitStatus" = 19968;
        "Program" = "clamscan";
        "ProgramArguments" = (
                "clamscan";
                "--suppress-ok-results";
                "-l";
                "/var/log/clamscan.log";
                "-r";
                "/Users";
        );
};

Traté de modificarlo para reemplazar clamscan con un script para poder verificar con qué argumentos se llama. Sin embargo, cuando intento cargarlo, se queja de que ya está cargado.

$ sudo launchctl load ~/Code/org.macports.clamscan.plist 
/Users/Stephen/Code/org.macports.clamscan.plist: service already loaded

Aparte de reiniciar, ¿hay alguna manera de editar una instalación launchd ¿trabajo? Esto es para Sierra.

1voto

tstaylor7 Puntos 301

Puedes decirle a launchd que lo elimine de su caché y lo relea desde el disco. Desde la página man:

 uncache service-name
          This subcommand instructs launchd to bypass its service cache
          for the named service and instead read the service's configu-
          ration file directly from disk.  launchd maintains an in-mem-
          ory cache of XPC service configuration files to minimize the
          disk I/O. This subcommand will remove a cached entry so that
          developers may more rapidly iterate on a service's configura-
          tion. It should not ever be used as part of production work-
          flow.

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