Wenn ich eine Cron-Datei in /etc/cron.d scp, wird sie nur ausgeführt, wenn ich die Datei bearbeite und den Befehl ändere. Dann scheint crond die Cron-Datei aufzunehmen.
Wie kann ich Cron dazu bringen, seine Cron-Dateien in Ubuntu 10.04 neu zu laden? Das 'Berühren' der Datei funktioniert nicht und 'cron neu starten' oder 'cron neu laden' funktioniert nicht.
Meine Cron-Datei wird so eingestellt, dass sie jede Minute ausgeführt und in einer Datei protokolliert wird. Nichts landet in der Protokolldatei, bis ich den Befehl bearbeite, und es gibt keinen Eintrag dafür in / var / log / syslog
Ich bin ratlos.
Hier ist meine Cron-Datei, die in /etc/cron.d/runscript gespeichert ist (beachten Sie, dass sie mit einer neuen Zeile endet)
# Runs the script every minute. This is safe because it will exit with success if it's already running
* * * * * www-data if [ -f /usr/local/bin/thing ]; then exec /usr/bin/php /usr/local/bin/thing mode:prod -a 14 -d >> /var/log/thing/mything.log 2>&1; else echo `date +'[\%D \%T]'` "Thing not deployed. Command not run" >> /var/log/thing/mything.log; fi &
Antworten:
Ich bin gerade auf dieses Problem gestoßen, und obwohl es Ihren speziellen Fall nicht beantwortet, kann es auch anderen Leuten helfen, das gleiche Problem zu googeln, da diese Frage in den Ergebnissen sehr hoch ist.
Ich hatte eine Datei in /etc/cron.d gespeichert und sie wurde ignoriert. In meinem Fall lag es daran, dass ich den Dateien eine Erweiterung gegeben hatte.
mytask.cron
hat nicht funktioniert, aber ich habe es in umbenanntmytask
und es hat gut funktioniert.Dateien mit Erweiterungen werden ignoriert. Vergewissern Sie sich daher, dass Ihre gespeicherte Datei keine Erweiterung aufweist.
quelle
Überprüfen Sie, ob die zu kopierende Datei mit a endet
\n
. Einträge in Crontabs, die\n
am Ende kein a haben, stoßen in der Regel auf Probleme. Am einfachsten stellen Sie dies sicher, indem Sie nach Ihrer letzten Eingabe eine Leerzeile einfügen.quelle