job de launchd não está na lista, mas ainda está em execução

0

Eu tenho um job launchd que está sendo executado a cada dois minutos, mas não está no sudo launchctl list .

Eu estava alterando o arquivo plist, tanto o nome do arquivo como a chave Label. Eu não o descarreguei antes, mas carreguei o arquivo recém-nomeado. Talvez seja isso que causou isso, mas eu ainda esperava na lista.

Mas nunca está na lista sudo launchctl list . Eu verifiquei cron como uma boa medida também.

Eu verifiquei os outros usuários. Eu vejo o script que o job launchd é executado a cada dois minutos quando eu faço ps aux . Existe uma maneira de usar ps aux para ver qual processo de lançamento gerou?

O que mais posso fazer para impedir isso? Reiniciar o servidor tem que ser o último recurso, assim como reiniciar o launchd, mas se essa é a única opção que é a única opção.

Também há essa pergunta, mas ninguém a respondeu: link

    
por dgig 09.06.2016 / 15:49

1 resposta

1

Is there a way I can use ps aux to see which launchd process spawned it?

Se você usar ps -ef , as três primeiras entradas de cada linha informam o UID, o PID e o Parent PID de um processo. Aqui está um exemplo:

$  ps -ef|head -2
  UID   PID  PPID   C STIME   TTY           TIME CMD
    0     1     0   0 30May16 ??        25:05.63 /sbin/launchd

Entre esses três, você deve descobrir a origem do processo que está procurando. Aqui está um exemplo bastante óbvio onde eu estou olhando para softwareupdated (o daemon para softwareupdate ):

Primeiro, procuro o processo e confirmo usando ps -ef <some_PID> . Eu tenho o hábito de terminar pesquisas com grep -v grep para excluir grep dos meus resultados

$  ps -ef|grep softwareupdated|grep -v grep
  200  3711     1   0 30May16 ??         6:45.49 /System/Library/CoreServices/Software Update.app/Contents/Resources/softwareupdated
$  ps -ef 3711
  UID   PID  PPID   C STIME   TTY           TIME CMD
  200  3711     1   0 30May16 ??         6:45.49 /System/Library/CoreServices/Software Update.app/Contents/Resources/softwareupdated

O PID pai é numerado em 1 , portanto, verifiquei:

$  ps -ef 1
  UID   PID  PPID   C STIME   TTY           TIME CMD
    0     1     0   0 30May16 ??        25:08.24 /sbin/launchd
    
por 09.06.2016 / 19:19