Não há saída de log para trabalho cron

0

Eu tenho o cron job abaixo configurado por meio de crontab -e . Eu tentei passar por todas as sugestões em Por que os scripts crontab não estão funcionando? , mas nada ajudou. O sistema está claramente em execução, conforme mostrado ao executar sudo grep CRON /var/log/syslog . O arquivo run_extraction.sh tem o shebang no topo e os direitos de execução com chmod +x . O arquivo de log está sendo criado, mas nada é adicionado a ele. Mais importante, o script python não parece ser executado, pois não há saída criada a partir dele. O script bash funciona quando executado a partir da linha de comando.

Eu considerei configurar variáveis de ambiente, mas dado que mesmo o echo $USER não está produzindo saída de log, algo mais fundamental parece ser o problema. Alguma idéia?

saída do grep

Aug  6 15:41:01 scalablegpu3 CRON[13723]: (myuser) CMD (/raid/myuser/database_extraction/run_extraction  >> /raid/myuser/database_extraction/extraction.log)
Aug  6 15:42:01 scalablegpu3 CRON[13730]: (myuser) CMD (/raid/myuser/database_extraction/run_extraction  >> /raid/myuser/database_extraction/extraction.log)

Entrada do Crontab

* * * * * /raid/myuser/database_extraction/run_extraction  >> /raid/myuser/database_extraction/extraction.log

Arquivo Bash

#!/bin/bash
echo $USER
python database_extraction.py
    
por pir 06.08.2017 / 21:46

1 resposta

1

Você provavelmente esteve olhando por muito tempo. (Estive lá, confie em mim)
O script de shell é run_extraction.sh , mas na entrada crontab, você está sem o ".sh". Deveria se parecer com:

* * * * * /raid/myuser/database_extraction/run_extraction.sh  >> /raid/myuser/database_extraction/extraction.log

Se você quiser que stderr e stdout estejam logados, você pode querer adicionar o redirecionamento no final (isso ajudará a depurar mais as coisas):

* * * * * /raid/myuser/database_extraction/run_extraction.sh  >> /raid/myuser/database_extraction/extraction.log 2>&1
    
por Jeff Burns 06.08.2017 / 21:52