Riconfigurazione di un lavoro di avvio

1

Voglio configurare un daemon launchd per eseguire una scansione antivirus ogni giorno. Ho scritto un .plist e lo ho caricato manualmente usando launchctl load ma non sembra funzionare. Volevo modificarlo per provare a eseguire il debug del perché. Tuttavia, non sembra essere modificabile.

Ecco l'output di 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";
        );
};

Ho provato a scaricarlo per modificarlo e ricaricarlo ma non sembra funzionare:

$ 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";
        );
};

Ho provato a modificarlo per sostituire clamscan con uno script in modo da poter verificare con quale argomento è stato chiamato. Tuttavia, quando provo a caricarlo, si lamenta che è già caricato.

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

Oltre al riavvio c'è un modo per modificare un lavoro launchd installato?  Questo è per Sierra.

    
posta Stephen Rasku 14.06.2017 - 06:24
fonte

1 risposta

1

Puoi dire a launchd di rimuoverlo dalla sua cache e rileggerlo dal disco. Dalla pagina 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.
    
risposta data 13.07.2017 - 11:11
fonte

Leggi altre domande sui tag