aviso de isenção [1].
Gostaria de adicionar uma nota de rodapé ou um adendo à @ resposta do RanRag .
Certifique-se de que a sintaxe de redirecionamento do shell esteja de acordo com /bin/sh
. Se você tentar usar a sintaxe de redirecionamento de shell que não é válida com /bin/sh
, seu comando falhará e seu trabalho cron nunca será executado.
Nos arquivos /etc/cron.d/example1
config, se você especificar um usuário diferente de root
e o shell de login desse usuário não for /bin/bash
..., você ainda deverá usar a sintaxe / bin / sh no comando /etc/cron.d/example1
.
Por exemplo
Se o seu usuário tiver o shell csh
ou zsh
ou ksh
definido para seu shell de login. No seu arquivo /etc/cron.d/example1
config, o comando deve usar a sintaxe /bin/sh
. Especificamente, qualquer redirecionamento de shell deve ter /bin/sh
de sintaxe.
Se você tentar usar por exemplo a sintaxe de redirecionamento csh
shell no seu /etc/cron.d/example1
, seu trabalho cron nunca será executado. O arquivo de log para crond
localizado em /var/log/cron
dirá que o comando foi executado, mas o comando irá cometer um erro de sintaxe antes que seu comando seja executado.
Onde crond
emite mensagens de erro para um erro de sintaxe?
O erro nunca é relatado em /var/log/cron
. crond
, por padrão, emite qualquer mensagem de erro usando mail
. Então você deve verificar /var/spool/mail/${USER}
para ver qual é o erro.
[1]
Aviso de isenção
- Esta resposta pressupõe um
sysv
system
-
systemd
informações podem diferir
- Especificamente, essas informações foram aprendidas para
centos-6
distro e podem não se aplicar a diferentes sysv
distros
- menciono
centos-6
especificamente, porque diferentes distros podem ter uma implementação crond
diferente que difere de centos-6