Logs provavelmente vão para o syslog, que varia dependendo do que o daemon syslog está envolvido e como isso é configurado para logar, comece com
grep -r cron /etc/*syslog*
para encontrar onde e o que está acontecendo no sistema, ou por exemplo em systemd
o comando relevante é
journalctl -b 0 _SYSTEMD_UNIT=cron.service
Adicionar uma tarefa cron do teste que toca um arquivo (idealmente não em /tmp
, a menos que o fornecedor torne esse usuário privado, por motivos de segurança) também deve confirmar se o cron está funcionando ou não, o trabalho do cron cron antes de preencher uma partição ou algo bobo.
Outros indicadores de usabilidade e segurança: alguns daemons do cron podem executar scripts diretamente, e nesse caso você pode simplesmente copiar o script em /etc/cron.daily
, embora isso possa não ser adequado para algo que você não deseja executar (com tudo mais!) exatamente no topo da hora. root
executar um script no diretório inicial de um usuário pode ser muito ruim, pois um comprometimento dessa conta de usuário poderia ser aproveitado para o acesso root ou o script poderia falhar desnecessariamente se o diretório inicial estivesse em NFS ou criptografado; mova o script para outro lugar para evitar isso ( /root/bin
, ou algum lugar abaixo de /usr/local
ou /opt
dependendo das preferências do sistema de arquivos local).
Ainda mais ponteiros caem no reino da depuração do shell script, principalmente para notar que o cron não é o shell; use env
ou set
para ver o que está configurado no cron, verifique se PATH
está correto e etc. (Um bug antigo e horrível do kernel do linux envolvia daemons java travando, mas apenas se eles fossem executados a partir do cron; divertido de depurar ...)