Auf einem Server, den ich geerbt habe, wird cron
stündlich ein Job auf einem der Debian-Server ausgeführt. Es sendet eine E-Mail an eine nicht vorhandene E-Mail, kehrt jedoch zu meinem Konto zurück, da ich mich selbst als root
E -Mail-Adresse aufgeführt habe /etc/aliases
. Der Cron-Job wurde aus /etc/cron.hourly
(es war ntupdate
) gelöscht , da er in der E-Mail aufgeführt ist. Ich habe den crontab
Daemon neu geladen, erhalte aber immer noch stündliche Berichte, dass die Datei nicht gestartet werden konnte und die E-Mail-Adresse nicht vorhanden ist!
Die Ausgabe, die per E-Mail gesendet wird:
/etc/cron.hourly/ntpdate:
run-parts: failed to exec /etc/cron.hourly/ntpdate: Exec format error
run-parts: /etc/cron.hourly/ntpdate exited with return code 1
Derzeit befindet sich nur die .placeholder
versteckte Datei in /etc/cron.hourly
. Ich bin auch gelaufen crontab -l
, und es wird erwartet, dass die einzigen 3 aufgelisteten Jobs aufgelistet werden. Sie werden ungefähr 10 Minuten nach dem Eintreffen dieser E-Mail ausgeführt. Ich weiß also, dass es nicht einer von denen ist. Wo kann ich als nächstes suchen, um diese E-Mails nicht mehr zu erhalten?
EDIT # 1
# ls -l /var/spool/cron
total 4
drwx-wx--T 2 root crontab 4096 Jan 25 2012 crontabs
EDIT # 2
# ls -l /var/spool/cron/crontabs/
total 4
-rw------- 1 root crontab 311 Jan 25 2012 root
# more /var/spool/cron/crontabs/root
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.4nUf85/crontab installed on Wed Jan 25 10:11:10 2012)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
2 1 * * * /etc/webmin/cron/tempdelete.pl
0 22 * * * /etc/init.d/gnugk stop
0 23 * * * /etc/init.d/gnugk start
Dies ist auf Debian Squeeze und verwendet nur cron
, soweit ich das beurteilen kann
quelle
cron
Daemon neu geladen? Ist ein Neustart des Servers eine Option?service cron restart
?Antworten:
System Crones
Haben Sie diese Dateien und Verzeichnisse durchgesehen, um sicherzustellen, dass kein doppelter Cronjob vorhanden ist?
Außerdem werden alle Dateien in diesen Verzeichnissen ausgeführt, die ausführbar sind. Es spielt keine Rolle, ob es sich um einen .placeholder-Namen handelt oder was auch immer. Sie können
chmod 644 ...
damit jedes ausführbare Skript deaktivieren.Benutzer crontabs
Überprüfen Sie auch das folgende Verzeichnis, um festzustellen, ob Benutzer eigene Crontabs erstellt haben:
Zum Beispiel:
quelle
syslog
Show noch etwas?/var/log/syslog
.Skipping @reboot jobs -- not system startup)