Que sinal o upstart / initctl usa para reiniciar um trabalho?

10

Qual sinal será upstart / initctl para reiniciar um trabalho? Além disso, existe alguma maneira de especificar que SIGHUP deve ser usado?

Como alternativa, existe uma maneira de definir um comando reload personalizado que enviará um SIGHUP? Ou preciso sair de upstart para fazer isso?

    
por David Eyk 11.10.2010 / 18:08

1 resposta

23

What signal will upstart/initctl use to restart a job?

SIGTERM

$ strace -fp 'pgrep cron' 2> ~/strace &
$ initctl restart cron
$ cat ~/strace
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGCHLD, NULL, {0x804a280, [CHLD], SA_RESTART}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
nanosleep({60, 0}, {57, 153662204})     = ? ERESTART_RESTARTBLOCK (To be restarted)
--- SIGTERM (Terminated) @ 0 (0) ---
Process 2275 detached

Furthermore, is there any way to specify that SIGHUP should be used?

Uso: initctl reload

Alternately, is there a way to define a custom reload command that will send a SIGHUP?

Uso: initctl reload

Or do I need to go outside of upstart to do that?

Use initctl reload ou kill / killall -HUP

    
por 11.10.2010 / 18:22

Tags