
Eu tenho um sistema Linux gentoo, que executa um cronjob todos os dias às 3h10 da manhã. No entanto, nenhum arquivo contém /etc
qualquer informação relacionada a este cronjob específico, e o resultado crontab -l
é
# check scripts in cron.hourly, cron.daily, cron.weekly and cron.monthly
MAILTO=""
0 * * * * rm -f /var/spool/cron/lastrun/cron.hourly
1 3 * * * rm -f /var/spool/cron/lastrun/cron.daily
15 4 * * 6 rm -f /var/spool/cron/lastrun/cron.weekly
30 5 1 * * rm -f /var/spool/cron/lastrun/cron.monthly
*/10 * * * * test -x /usr/sbin/run-crons && /usr/sbin/run-crons
O diretório /etc/cron.daily
provavelmente contém o trabalho em questão, mas por um horário às 3:01! Por que é que? O cronjobn real está armazenado em outro lugar? O Gentoo leva 9 minutos para perceber a execução de um trabalho?
Informações adicionais:
- Eu tenho um trabalho crontab diferente para 13h20 (em cron.d) que é executado exatamente às 13h20 todos os dias.
Responder1
Verifique se não é de outro usuário:
getent passwd | while read r; do sudo -u $(echo $r | cut -d':' -f1) crontab -l; done
Responder2
crontab -l
lista apenas o crontab por usuário do usuário chamador. Há também um crontab do sistema, que só pode ser editado pelo root, mas pode executar jobs como qualquer usuário. O crontab do sistema está no arquivo /etc/crontab
, com trabalhos adicionais em arquivos no diretório /etc/cron.d
.
Os diretórios /etc/cron.daily
, /etc/cron.weekly
e /etc/cron.monthly
não são integrados pelo cron, mas percorridos por um trabalho listado em /etc/crontab
.