Eu tenho uma tarefa que deve ser executada todos os dias no Ubuntu10.04. Então eu uso o crontab e copio os scripts da tarefa para o diretório /etc/cron.daily.
Aqui está o meu crontab:
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the 'crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
22 0 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
48 2 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 3 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
Mas descobri que a tarefa em /etc/cron.daily é executada duas vezes por dia! Eu não sabia por que então eu adicionei um script (principalmente chamado pstree -a) em /etc/cron.daily para listar todos os processos. E então eu descobri que na verdade havia dois subprocessos cron!
|-cron
| |-cron
| | |-(cron)
| | '-sh -c test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
| | '-run-parts --report /etc/cron.daily
| | '-aa /etc/cron.daily/aa
| | '-pstree -a
| '-cron
| |-(cron)
| '-sh -c root1test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
| '-run-parts --report /etc/cron.daily
| '-aa /etc/cron.daily/aa
| '-pstree -a
Alguém sabe por que o cron roda duas vezes aqui?
Tags cron crontab ubuntu ubuntu-10.04 cronjob