Posso alterar o destinatário de email padrão nos trabalhos agendados?

12

Acredito que, se houver alguma saída de um cronjob, ela será enviada ao usuário a quem o trabalho pertence. Eu acho que você também pode adicionar algo como [email protected]na parte superior do arquivo cron para mudar para onde a saída é enviada.

Posso definir uma opção para que os trabalhos do cron em todo o sistema sejam enviados por email root para o usuário que os executa? (ou seja, para que eu não precise definir isso no arquivo cron de cada usuário)

cwd
fonte

Respostas:

9

Verifique o /etc/crontabarquivo e coloque MAILTO=rootlá. Também pode precisar em /etc/rcarquivo

crondparece aceitar a variável MAILTO, acho que não tenho certeza, mas vale a pena tentar alterar a variável de ambiente por crond antes de ser iniciada. Como em /etc/sysconfig/crondou /etc/rc.d/init.d/crondscript que origina o arquivo anterior.

Exemplo:

[centos@centos scripts]$ strings /usr/sbin/crond | grep -i mail
ValidateMailRcpts
MailCmd
cron_default_mail_charset
usage:  %s [-n] [-p] [-m <mail command>] [-x [
CRON_VALIDATE_MAILRCPTS
mailed %d byte%s of output but got status 0x%04x
[%ld] no more grandchildren--mail written?
MAILTO
/usr/sbin/sendmail
mailcmd too long
[%ld] closing pipe to mail
MAIL
Nikhil Mulley
fonte
Muito obrigado! +1. Talvez coloque a parte inferior da sua resposta em um formato de pré-formato / código?
Cwd
7

Coloque MAILTO=rootno /etc/default/cron. Este arquivo contém as configurações padrão do cron.

man 5 crontab diz

Se MAILTO estiver definido (e não vazio), o email será enviado ao usuário assim chamado.

Consulte: http://man.cx/cron(1)#heading4

Sachin Divekar
fonte
Onde? para o arquivo crontab de cada usuário?
Nikhil Mulley
@ Nikhil verifique minha resposta atualizada.
Sachin Divekar
1
funciona apenas para os usuários cujo crontab o possui. Funcionará se algum dos usuários não tiver essa variável definida? Acho que o @Cwd pediu especificamente uma configuração global para todos os usuários.
Nikhil Mulley
@SachinDivekar -1 Nikhil está certo. Você também editou minha pergunta e mudou o significado dela. O significado editado se alinha à sua resposta, mas não é isso que eu estava perguntando.
Cwd
2
Isso não está funcionando para mim. Tenho posto o MAILTO no arquivo padrão e reiniciado o serviço cron, mas ainda está enviando a raiz (Eu estou tentando enviar para um endereço de email externo)
Peedee