Eu preciso monitorar a intrusão em um servidor em intervalos (relativamente) aleatórios. Para isso, configurei um cron job para executar a cada hora.
Eu escrevi três scripts:
O random_sleep_interval funciona sozinho quando eu o digito no CLI assim:
random_sleep_interval 100
Produz algo assim:
Sleeping for 95 seconds ...
Onde 95 é um intervalo de tempo aleatório calculado / selecionado pelo script random_sleep_interval. Toda vez que o script é executado, ele dorme por um número aleatório de segundos (entre 0 e o primeiro argumento passado para o script)
O script wrapper é invocado com sucesso pelo cron. O script wrapper, por sua vez, chama o random_sleep_interval e o script worker. No entanto, quando eu verifico os logs criados pelo script worker, todos os arquivos de log são criados no MESMO TEMPO que a tarefa cron inicia - o que significa que, de alguma forma, a parte do sono não está funcionando.
Alguém pode me explicar por que, juntos, eles não funcionam, mas seprately funciona (como explicado acima)?
A única razão para este comportamento é se o script wrapper está gerando processos diferentes para cada script a ser executado - mas isso não faz sentido ...
Estou executando no Ubuntu 10.0.4 LTS
Tags cron crontab ubuntu ubuntu-10.04