GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Warum läuft mein cron.d-Job nicht pro Minute?

Beim Hinzufügen einer Cron-Konfiguration in /etc/cron.d/ oder in /etc/crontab Sie müssen den Benutzernamen hinzufügen, in dem der Befehl ausgeführt werden soll, in Ihrem Beispiel

* * * * * root /bin/touch /home/me/ding_dong

Und nur ein Hinweis von mir:Sie müssen ls -ltr nicht starten Verwenden Sie immer wieder einfach watch -n 5 "ls -ltr" und es wird den Befehl alle 5 Sekunden ausführen (oder jeden anderen Wert, indem Sie 5 durch das ersetzen, was Sie wollen).


Zum Erstellen eines neuen cron job, sollten Sie crontab -e ausführen als der Benutzer, der den Job ausführen soll. Fügen Sie dann im erscheinenden Editorfenster die entsprechende Zeile hinzu:

* * * * * /bin/touch /home/me/ding_dong

Die Art und Weise, wie Sie es tun, erfordert ein anderes Format und ist sowieso keine gute Idee. Crontabs in /etc/cron.d haben ein etwas anderes Format, sie erfordern einen Benutzernamen, unter dem sie ausgeführt werden. Zum Beispiel:

* * * * * USERNAME /bin/touch /home/me/ding_dong

Ein guter Trick (wie von @VogonPoetLaureate vorgeschlagen) besteht darin, den Standardfehler Ihrer Cron-Jobs zu erfassen, der beim Debuggen helfen kann. Zum Beispiel:

* * * * * /bin/touch /home/me/ding_dong 2>/tmp/error

Ein möglicher Fehler ist hier wie eine einzeilige Datei geschaffen. Aus der Ubuntu-Dokumentation:

...line hat fünf Zeit- und Datumsfelder, gefolgt von einem Befehl, gefolgt von einem Zeilenumbruch .

Zum Beispiel funktioniert diese Art der Erstellung nicht:

printf "* * * * * /bin/touch /home/me/ding_dong" > /etc/cron.d/ding_dong

Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Linux – Zusammenführen von /usr/bin und /usr/sbin in /bin (gnu/linux)?

  3. Warum zeigt /bin/sh auf /bin/dash und nicht auf /bin/bash?

  4. Installieren Sie Binärdateien in /bin, /sbin, /usr/bin und /usr/sbin, Interaktionen mit --prefix und DESTDIR

  5. So führen Sie einen Cron-Job in einem Docker-Container aus

Unterschied zwischen /bin und /usr/bin

/bin Inhalt nach /usr/bin verschoben, rückgängig machen möglich?

Kann ich einen Cronjob häufiger als jede Minute ausführen?

Ubuntus Garbage-Collection-Cron-Job für PHP-Sitzungen dauert 25 Minuten, warum?

Warum wird mein CentOS-Logrotate zu zufälligen Zeiten ausgeführt?

#!/bin/sh vs. #!/bin/bash für maximale Portabilität