Por que o crontab não executará meu arquivo em um horário definido, mas será executado a cada minuto?

1

Então, eu tentei fazer com que o crontab executasse um arquivo node.js em um horário definido todos os dias. Eu configurei fazendo crontab -e . Eu testei que ele é executado a cada minuto usando o seguinte:

* * * * * //path of files

Isso faz com que tudo corra bem no minuto. No entanto, se eu tentar configurá-lo para um horário específico, ele não será executado. Por exemplo, se eu tentar executá-lo às 12h48, ele não será executado:

48 12 * * * //path of files

Eu tentei solucionar tudo e claramente um problema de tempo. É um servidor EC2 localizado em Oregon. Eu ajustei o meu tempo para o Oregon e ele ainda não funcionará.

Existe algo especial que precisa ser mudado com o comando crontab se você definir um tempo específico versus apenas executá-lo a cada minuto? Você precisa definir um tempo específico de 5 minutos ou mais antes do tempo para executá-lo?

Não sei por que isso não executará meu arquivo em um horário específico, mas funcionará bem a cada minuto.

    
por user7977797 30.03.2018 / 23:06

1 resposta

0

A solução é fornecida pela sugestão do ikkachu. Especificamente, digite

grep -re cron /var/log/ 

ou algo similar.

Isso fornecerá uma lista com horários e outras informações.

Os tempos listados mostraram que o servidor estava realmente saindo do horário UTC. Então, o ajuste para o horário UTC resolveu o problema.

Encontrar a hora exata em que o servidor está usando, independentemente de sua localização real, é a solução para esse tipo de problema.

    
por 01.04.2018 / 00:46