Como já foi apontado na resposta de Keith , você não deve colocar arquivos diretamente em /var/spool/cron
, pois eles não serão vistos por crond
.
Você deve manter sua própria instância do arquivo crontab
de um usuário e usar o comando crontab
para sinalizar as alterações para crond
:
echo '* * * * * date >>/tmp/output' | crontab
Se você puder criar várias entradas, poderá gravar cada uma em seu próprio arquivo e, em seguida, cat
os resultados em uma única crontab
.
mkdir .crondir
...
echo '* * * * * echo job1 >> /tmp/output.1' > .crondir/job1
echo '* * * * * echo job2 >> /tmp/output.2' > .crondir/job2
echo '* * * * * echo job3 >> /tmp/output.3' > .crondir/job3
cat .crondir/job* | crontab
Obviamente, é necessário que o usuário que está executando o comando crontab
tenha direitos para usá-lo. Dependendo de como você configurou seu esquema de permissões para seu aplicativo, pode ser sua própria conta de usuário. Caso contrário, talvez seja necessário ser o usuário do servidor da Web ( apache
) ou possivelmente root
.