it-swarm.com.de

Crontab - einfaches Echo läuft nicht

Ich habe eine solche Situation: Ich möchte einen Job mit Crontab auf einem Linux-Server einplanen. Ich bin kein Super-User, also bearbeite ich (mit crontab -l, editor vim) nur meine crontab-Datei. Zum Testen stelle ich dort ein:

* * * * * echo asdf

Und der Job läuft nicht. Ist ein Neustart des Servers erforderlich? Oder vielleicht ein Administrator umziehen?

11
zlenyk

Es kann sein, dass Cron-Jobs in ihrer eigenen Shell laufen. Sie können also nicht erwarten, dass asdf auf Ihrer Konsole angezeigt wird.

Was Sie versuchen sollten, ist 

* * * * * echo asdf > somefile_in_your_home_directory_with_complete_path.log

Als nächstes überprüfen Sie die Datei mit einem Schwanz:

tail -f somefile_in_your_home_directory_with_complete_path.log

Wenn dies nicht der Fall ist, prüfen Sie, ob der Cron-Daemon selbst ausgeführt wird oder nicht.

# pgrep crond

OR

# service crond status
22
Kedar Parikh

Für mich arbeitet * * * * * /bin/echo text > file nicht ... Ich weiß nicht warum, Präferenzen und alles ist gesetzt. (Dieser Befehl wird normal ausgeführt, wenn ich ihn als bestimmten Root-Benutzer ausführte, einfach zu klären Sie dies.) Dies kann durch Einfügen des Pfads PATH=$PATH:/bin in meinem Beispiel gelöst werden.

Stattdessen funktioniert * * * * * echo text > file gut, wahrscheinlich Pfadproblem.

Hoffe ich habe geholfen

0