Cronjobs von selbst wieder anstellen

Posted on 11. Mai 2011 Comments

Das Problem war ganz einfach, manuell dürfen einige wenige Berechtigte aus guten Gründen Cronjobs abstellen. Damit aber am nächsten Tag der Cronjob wieder läuft braucht man ein (nicht-abstellbaren) Cron Jobs, der alle anderen Cronjobs wieder anstellt. Glücklicherweise gibt es da die Schnittstelle Config::Crontab und so sind dies nur ein paar Zeilen(via CPAN bzw. man Config::Crontab):

#!/usr/bin/perl
use Config::Crontab;
my $ct = new Config::Crontab;
$ct->read; # alle crons auslesen a.k.a. crontab -l
$_->active(1) for $ct->select(-command_re => '/usr/local/bin/command'); # zeile vervielfachen fuer andere befehle
$ct->write; # alle crontabs schreiben, nicht vergessen!

Der gewünschte, nun wieder aktive Befehl ist /usr/local/bin/command.

Pings

  1. Windows PCs mit Linux Server herunterfahren | repats blog

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.