Kann ich den Standard-E-Mail-Empfänger bei Cron-Aufträgen ändern?


12

Ich glaube, dass die Ausgabe eines Cronjobs an den Benutzer gesendet wird, dem der Job gehört. Ich denke, Sie können auch so etwas wie MAILTO=vivek@nixcraft.inoben in der Cron-Datei hinzufügen, um zu ändern, wohin die Ausgabe gesendet wird.

Kann ich eine Option festlegen, damit Cron-Jobs systemweit per E-Mail root an den Benutzer gesendet werden, der sie ausführt ? (dh damit ich dies nicht in der Cron-Datei jedes Benutzers einstellen muss)

Antworten:


9

/etc/crontabDatei prüfen und dort eintragen MAILTO=root. Könnte auch in der /etc/rcDatei benötigen

crondScheint die MAILTO-Variable zu akzeptieren. Ich bin mir nicht sicher, aber es lohnt sich, die Umgebungsvariable für crond zu ändern, bevor sie gestartet wird. Wie in /etc/sysconfig/crondoder /etc/rc.d/init.d/crondSkript, das die frühere Datei erzeugt.

Beispiel:

[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

Vielen Dank! +1. Vielleicht den unteren Teil Ihrer Antwort in ein Vorformat / Code-Format setzen?
— KWD

7

Setzen Sie MAILTO=rootin /etc/default/cron. Diese Datei enthält die Standardeinstellungen von cron.

man 5 crontab sagt,

Wenn MAILTO definiert ist (und nicht leer ist), wird E-Mail an den so genannten Benutzer gesendet.

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


wo? für jede Benutzer-Crontab-Datei?
— Nikhil Mulley

@ Nikhil überprüfen meine aktualisierte Antwort.
— Sachin Divekar

1
es funktioniert nur für die Benutzer, deren crontab es hat. Funktioniert es, wenn einer der Benutzer diese Variable nicht gesetzt hat? Ich denke, @Cwd hat speziell nach einer globalen Einstellung gefragt, die für alle Benutzer gilt.
— Nikhil Mulley

@SachinDivekar -1 Nikhil ist richtig. Sie haben auch meine Frage bearbeitet und ihre Bedeutung geändert. Die bearbeitete Bedeutung stimmt mit Ihrer Antwort überein, aber das ist nicht das, was ich gefragt habe.
— KWD

2
Das funktioniert bei mir nicht. Ich habe die Mailto in der Standarddatei und neu gestartet cron Dienst eingerichtet, aber es ist das Senden noch zu root (Ich versuche , an eine externe E - Mail - Adresse zu senden)
— peedee
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.