Ich verwende CentOS 5.5.
In /etc/cron.daily/ sind mehrere Cronjobs gespeichert. Wir möchten, dass die E-Mail für einige dieser Cronjobs an eine bestimmte E-Mail-Adresse gesendet wird, während der Rest der E-Mails in /etc/cron.daily/ an die Standard-E-Mail-Adresse (root @ localhost) gesendet wird.
Cronjobs in /etc/cron.daily/ werden aus der Datei / etc / crontab ausgeführt. / etc / crontab gibt ein 'MAILTO'-Feld an. Kann ich dies überschreiben, indem ich MAILTO in meinem /etc/cron.daily/foo-Cronjob einstelle?
Wie geht man am besten damit um?
/etc/crontab
legt keine Standardeinstellungen fest .Antworten:
Einstellung
[email protected]
in/etc/cron.daily/foo
nicht funktioniert. Die Skriptausgabe wird nicht an [email protected] gesendet.Die Seite unter http://www.unixgeeks.org/security/newbie/unix/cron-1.html schlägt ebenfalls eine einfache Lösung vor:
Die Datei
/etc/cron.daily/foo
enthält jetzt Folgendes:Dies sendet eine E-Mail an '[email protected]' mit dem Betreff, der dem vollständigen Pfad des Skripts entspricht (z
/etc/cron.daily/foo
. B. ).Das sagt Unixgeeks.org dazu:
Manchmal möchte ich nur die Fehler eines Cronjobs erhalten, nicht die Standardausgabe, also benutze ich diesen Trick. Die Syntax mag auf den ersten Blick falsch aussehen, aber Sie können sicher sein, dass sie funktioniert. Der folgende Cronjob sendet STDOUT an / dev / null und verarbeitet dann STDERR über die Pipeline.
Gleiche Sache, aber an Syslog senden:
Siehe auch meine Antwort auf ServerFault auf Cronjob stderr zu Datei und E-Mail
quelle
Eine elegantere Lösung wäre die
/etc/cron.d
direkte Verwendung . Anstatt Ihr Skript in zu haben/etc/cron.daily
, legen Sie es irgendwo ab/usr/local/sbin/myscript.sh
und erstellen Sie die Datei/etc/cron.d/myscript
wie folgt :Dies gibt Ihnen auch viel mehr Kontrolle darüber, wann der Auftrag ausgeführt wird. Zum Beispiel nur an bestimmten Wochentagen usw.
crontab(5)
Weitere Informationen erhalten Sie beim Mann.quelle
Angenommen, Sie haben auf diesem Computer SA-Zugriff, können Sie ein neues Benutzerkonto erstellen und die Aufgaben zu den Cron-Aufgaben dieses Kontos hinzufügen. Die E-Mail für diesen Benutzer kann dann mithilfe einer Weiterleitungsdatei in diesem Basisordner des Kontos weitergeleitet werden. Möglicherweise müssen Sie Berechtigungen für diesen Benutzer einrichten, wenn für die Cron-Tasks ein privilegierter Zugriff erforderlich ist.
Ob diese oder Stefans Antwort am besten passt, hängt davon ab, wie viel Aufwand Sie beim Einrichten des Programms benötigen und ob Fehlermeldungen an die Stamm-E-Mail-Adresse oder an die Personen gesendet werden sollen, die normalerweise die tägliche Ausgabe überwachen.
Viel Glück
quelle