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

Listen Sie den aktuell ausgeführten Cron-Tab auf und stoppen Sie ihn

Schade, dass auf dieser und anderen in Google aufgeführten Seiten zum Umgang mit hängenden Cron-Jobs niemand pstree erwähnt.

pstree

Sehen Sie unter Cron-Teil des Baums nach


Ich denke, wenn ein Shell-Skript-Wrapper in der Nähe ist, sollte der Cronjob ein Timeout haben, wenn er für längere, willkürlich lange Zeiträume ausgeführt wird. Der Wrapper sollte SIGHUP oder SIGALARM senden, wenn die Zeitüberschreitung ab dem Zeitraum eintritt, in dem der Cronjob aufgerufen wird. Etwa so:

50 * * * * /usr/bin/my_cron_wrapper_timeout -t 1 /usr/bin/my_command_cron_job_to_run

Dieses cron_wrapper_timeout sollte grundsätzlich das Timeout-Signal senden, sobald -t switch option 1 Stunde verstrichen ist, und dann kill -HUP senden signalisieren Sie dem Cronjob und stellen Sie dann sicher, dass Sie auch den Prozess ernten und sich dann selbst beenden/beenden.

Oder alternativ sollte der Code in den Cronjob selbst geschrieben werden, um die Zeitüberschreitung des ALARM-Signals zu handhaben und sicherzustellen, dass es bereinigt wird, bevor es sanft stirbt.

BEARBEITEN

Genau darauf habe ich mich bezogen:Watchdog unter http://chihungchan.blogspot.com/2011/03/no-more-hanging-jobs-in-cron.html


Sie sollten den Prozess stoppen, den Crontab gestartet hat.

#kill -HUP PID (PID: Process ID is the process running)

Um eine Beziehung der PID zu den laufenden Prozessen (und weitere Informationen) zu sehen, verwenden Sie top ändern Sie die Spaltenreihenfolge mit den Tasten < und >

Versuchen Sie auch ps -ax|grep [your_process_file] die die laufenden Prozesse auflistet, die nach dem von Ihnen gewählten Namen gefiltert sind

-HUP =Auflegen


Linux
  1. Laufendes Skript mit „. “ Und mit „Quelle“?

  2. Einen Ordner durchlaufen und Dateien auflisten?

  3. Wie listet man laufende Bildschirmsitzungen auf?

  4. Wie kann ich einen Cron-Job anzeigen, der gerade ausgeführt wird?

  5. Wie kann ich eine Liste aller geplanten Cron-Jobs auf meinem Computer abrufen?

So listen Sie laufende Prozesse in Linux auf

Wie man Cron-Jobs unter Linux auflistet

Verschiedene Möglichkeiten zum Planen und Auflisten von CRON-Jobs in Linux

Cron-Jobs und Crontab unter Linux erklärt

Wie man Cron-Jobs für ein Linux-System über PHP ausführt und auflistet

Cron alle 2 Stunden ausführen