Ich bin auf der Suche nach einer Möglichkeit, eine Reihe von Befehlen auf einem Unix-Server zu planen. Die Serverzeit ist in UTC. Ich möchte im Wesentlichen jeden Mittwoch um 16.00 Uhr britischer Zeit die folgenden Schritte automatisch durchführen:Ändern eines Unix-Server-Datums mit einem geplanten Job
- Ändern Sie den Server-Datum zum nächsten Mal UK Mitternacht ist
- Starten Sie den Tomcatbediener (Zeitzone ändern Probleme zu vermeiden)
- Wenn Kater läuft, ein Glas laufen
- ändern der Server das Datum korrekt vorhanden UTC-Zeit
- Starten Sie den Tomcatbediener
- Wenn tomcat läuft, werden wir getan
Die folgenden Befehle sind das, was zur Zeit manuell Ich betreiben:
date -s "Thu Feb 09 00:01:00 UTC 2017" (represents the next day at 1 minute past midnight)
service tomcat restart
sudo -u tomcat java -jar Test.jar -type "Major" -status "Active"
date -s "<the current UTC time>"
service tomcat restart
Ich verstehe, wir cron verwenden, um die Ausführung eines Skripts zu planen, aber nicht sicher, wie dies zu tun. Jede Hilfe wird geschätzt.
Danke für die Hilfe für Crontab! Gibt es auf dem Drehbuch eine Möglichkeit, es intelligent zu wissen, was am nächsten Tag um 1 Minute nach Mitternacht sein wird? Ich werde den Cronjob jede Woche für denselben Tag einstellen, muss aber auch Änderungen am Sommertag berücksichtigen. – user3190153
Warum NTP oder Chronyd nicht benutzen, damit die Zeit automatisch auf dem Server eingestellt wird? –
Da wir nur das Datum ändern wollen, an dem wir das JAR ausführen wollen, müssen wir die Serverzeit nach vorne verschieben, bevor wir sie wieder auf die korrekte Zeit in UTC setzen. Das JAR muss um 1 Minute nach Mitternacht ausgeführt werden, aber wir betreiben das JAR nur während der Arbeitszeit, so dass jemand es überwachen kann. – user3190153