O envio de mensagens via cron não funciona

2

Temos um script rsync para fazer um backup do servidor 1 para o servidor 2. O servidor é do tipo Centos, Amazon Linux AMI. O script é executado diariamente via crontab. O backup é feito, então o cron é executado e o script funciona. Um log é criado e deve ser enviado para nós via e-mail. Isso não acontece por algum motivo. Se eu executar o script manualmente, o email será enviado, para que o servidor de email (Postfix) funcione e o script de email no final do script rsync funcione também. Abaixo você vê o script rsync:

echo "To: [email protected]" > /tmp/rsync_test.log
echo "From: [email protected]" >> /tmp/rsync_test.log
echo "Subject: Testmail >> /tmp/rsync_test.log
echo "" >> /tmp/rsync_test.log
cat /tmp/rsync_test.log | sendmail -t

Por que isso não funciona e como posso corrigi-lo?

    
por SPRBRN 23.02.2015 / 12:21

1 resposta

4

Tarefas Cron executadas em ambiente limitado Paralelamente, a variável PATH env pode não conter caminho para cat ou sendmail

Tente especificar o caminho completo:

/bin/cat /tmp/rsync_test.log | /usr/sbin/sendmail -t

Esse é o meu palpite.

Se você quiser saber o motivo exato, capture stdout e stderr do seu script crontask em um arquivo de log ao configurar seu cronatsk

*/5 * * * * /your/scripts/task.sh >/somepath/file.log 2>&1

lá vai te dizer a mensagem de erro

    
por 23.02.2015 / 13:50

Tags