Cron Job não está funcionando?

19

Eu tenho um arquivo crontab com esta aparência:

* * * * * /home/abliskovs/update/update.sh

No entanto, quando verifico o syslog em busca de evidências de que o trabalho foi executado, não há nada que possa indicar que ele tenha sido executado. Como posso verificar se está sendo executado?

crontab -l apresenta o seguinte:

* * * * * /home/abliskovs/update/update.sh

    
por Alex Bliskovsky 06.01.2012 / 15:52

3 respostas

18
% bl0ck_qu0te%

Exemplo

% bl0ck_qu0te%

Também certifique-se do seguinte:

  • Adicione cronjobs da maneira correta. se você usou crontab -e em sua própria conta, os scripts são executados com o usuário (e, portanto, o entrada crontab tem um campo a menos - o usuário para executá-lo, como é conhecido). Se você simplesmente copiou o seu acima para o /etc/cron.d, iria falhar como você não especificou um usuário (ou melhor, como não encontra nenhum usuário chamado "bash").
  • Certifique-se de que o arquivo de script é executável, caso contrário, ele não será executá-lo.
  • Recarregue as tarefas do cron recarregamento do serviço sudo ou reinicie o serviço cron sudo /etc/init.d/cron restart

Como tornar um arquivo executável?

Várias maneiras de tornar seu arquivo executável

chmod +x /home/abliskovs/update/update.sh 

chmod -R 0755 /home/abliskovs/update/update.sh

chmod a+x /home/abliskovs/update/update.sh
    
por Md Mahbubur Rahman 11.11.2012 / 05:06
3

Certifique-se de que o arquivo de script é executável {chmod 755}, caso contrário, ele não será executado

    
por user25 19.01.2012 / 23:34
0

O script de shell update.sh provavelmente contém erros, por exemplo, alguns comandos que não podem ser executados porque o comando não pode ser encontrado. Nesse caso, pode ser útil adicionar o caminho ao seu comando na variável PATH ou adicioná-lo diretamente ao comando. Também ajuda a especificar o endereço de e-mail MAILTO, e-mails que resultam da execução de Cronjobs são enviados para este endereço

PATH=/path/to/your/command:/another/important/path
MAILTO=my_name@my_domain 

Você também pode verificar a caixa de correio local com mail e o arquivo syslog em /var/log/syslog para erros. Veja também esta questão relacionada por que cronjobs podem não funcionar .

    
por 0x4a6f4672 22.11.2012 / 12:05