Como outros apontaram, cron enviará por e-mail a saída de qualquer programa executado (se houver alguma saída). Então, se você não obtiver nenhuma saída, existem basicamente três possibilidades:
-
crondnão conseguiu nem iniciar um shell para executar o programa ou enviar email -
crondteve problemas ao enviar a saída ou a correspondência foi perdida. - o programa não produziu nenhuma saída (incluindo mensagens de erro)
Caso 1. é muito improvável, mas algo deveria ter sido escrito nos logs do cron. O Cron tem um próprio recurso de syslog reservado, então você deve dar uma olhada em /etc/syslog.conf (ou o arquivo equivalente em sua distro) para ver onde as mensagens do recurso cron são enviadas. Destinos populares incluem /var/log/cron , /var/log/messages e /var/log/syslog .
No caso 2., você deve inspecionar os logs do daemon do mailer: as mensagens do daemon Cron geralmente aparecem como de root@yourhost . Você pode usar uma linha MAILTO=... no arquivo crontab para que o cron envie um e-mail para um endereço específico, o que deve facilitar o grep dos logs do daemon do mailer. Por exemplo:
[email protected]
00 15 * * * echo "Just testing if crond sends email"
No caso 3., você pode testar se o programa foi realmente executado anexando outro comando cujo efeito você pode verificar facilmente: por exemplo,
00 15 * * * /a/command; touch /tmp/a_command_has_run
para que você possa verificar se crond executou algo observando
o mtime de /tmp/a_command_has_run .