Der CRON-Job wird ausgeführt, aber in keiner Datei ist ein Hinweis darauf zu finden

Der CRON-Job wird ausgeführt, aber in keiner Datei ist ein Hinweis darauf zu finden

Das ist eine seltsame Frage, und ich weiß, dass die Antwort etwas Einfaches sein wird, das ich übersehen habe … Ich habe die Verantwortung für einen Linux-Server geerbt, auf dem eine alte Version von Ubuntu 10.04 läuft. Jede Stunde wird ein Backup-Skript ausgeführt, aber ich kann nicht herausfinden, von wo aus es ausgeführt wird.

In den Authentifizierungsprotokollen sehe ich jede Stunde einen Eintrag, der genau der Zeit entspricht, zu der das Backup ausgeführt wird, was darauf hindeutet, dass es sich um einen Cron-Job handelt:

"pam_unix(cron:session): session opened for user root"

Es handelt sich nicht um einen Remote-Befehl über SSH, da ihm kein SSH-Sitzungseintrag vorausgeht.

Ich habe den folgenden Befehl ausgeführt, um alle Cron-Jobs der Benutzer aufzulisten, was jedoch für niemanden Ergebnisse liefert:

"for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done"

Es ist auch kein Anacron ... Was gibt es sonst noch? Irgendwelche Vorschläge, wo ich als nächstes suchen könnte? Ich denke, es gibt möglicherweise eine GUI-App und der Eintrag im Authentifizierungsprotokoll ist irreführend.

Dank im Voraus

Antwort1

Die Nachricht kommt aus PAM, das bei jedem Aufruf einer Shell konsultiert wird. Siehe Inhalt von /etc/pam.d, insbesondere Dateien /etc/pam.d/common-sessionund /etc/pam.d/cron.

Diese Meldung bedeutet, dass es tatsächlich irgendwo einen Cronjob gibt, der vom Root-Benutzer ausgeführt wird. Das bedeutet nicht, dass der Job irgendetwas tut (er könnte beispielsweise nur prüfen, ob eine bestimmte Protokolldatei groß genug ist, um rotiert zu werden, und dann ohne Rotation beendet werden).

Die Definitionen von Cronjobs sind über mehrere Verzeichnisse und Dateien verteilt. Als Root-Benutzer sollten Sie einen Blick in die Datei /etc/crontab, die Ausgabe crontab -l -u rootund den Inhalt der Verzeichnisse /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthlyund /etc/cron.dwerfen. Das letzte Verzeichnis enthält traditionelle Cronjob-Definitionstabellen, während alle anderen Verzeichnisse ausführbare Skripte oder Binärdateien enthalten, die vom Cron ausgeführt werden, wobei im Verzeichnisnamen ein Punkt angegeben ist (weitere Informationen finden Sie unter man run-parts).

verwandte Informationen