O problema já foi resolvido aqui .
Altere o crontab de cron
para iniciar seu interpretador Python
preferido com o caminho do script como argumento:
21 21 * * * /usr/bin/python /home/craig/openurl.py
Lembre-se de que um link simbólico padrão apontará para a versão padrão do interpretador, o que pode não estar correto se o software for baseado na sintaxe 2.X de Python
.
O daemon cron
pode lançar o intérprete com direitos elevados, usar um interpretador restrito para tarefas críticas de segurança automatizadas .
EDITAR para cobrir uma fatia maior de problemas após a configuração do cronjob:
Para monitorar em tempo real os trabalhos feitos por cron
e outros daemons do sistema, execute em um terminal:
tail -f /var/log/syslog
ou
tailf /var/log/syslog
(em alguns sistemas, o caminho do arquivo de log é diferente, como /var/log/cron.log
)
Para redirecionar o OUTPUT de um cron job , insira um redirecionamento de shell para STDOUT no arquivo cronjob, como:
21 21 * * * /usr/bin/python /home/craig/openurl.py >> /home/craig/test.log
Em um script Python
, um comando como print('TEST')
anexará a string TEST a test.log
; qualquer subprocesso simples também será redirecionado.
Basta verificar o arquivo para saber se o script funciona como esperado.
Por favor, sinta-se à vontade para comentar aqui se tiver mais perguntas e não se esqueça de pressionar a seta para CIMA da esquerda e marcar como Favorita se eu for de alguma ajuda.
Tenha um bom dia.