schelinho
Goto Top

Windows Server 2008R2 - geplanten Task ausführen nach Zeitumstellung - welche Zeit jetzt einstellen??

Hallo community!

Ich habe folgende Thematik:

Ich soll dieses Wochenende bei der Zeitumstellung einen Server um 02:05 Uhr (nach der "neuen" Winterzeit!) mittels Task neu starten lassen.
Jetzt frage ich mich, da wir ja noch Sommerzeit haben, welche Zeit ich nun hier einstellen soll? Denn wenn ich jetzt 02:05 eingebe, dann startet er ja schon um 02:05 Uhr nach Sommerzeit neu..
Demnach müsste ich 03:05 verwenden? Ich will natürlich vermeiden, dass der task eine Stunde später erst läuft..

Danke euch!

Content-ID: 352574

Url: https://administrator.de/contentid/352574

Ausgedruckt am: 14.11.2024 um 03:11 Uhr

MOS6581
MOS6581 23.10.2017 um 16:21:22 Uhr
Goto Top
Normalerweise sollte der Server doch selbst Sommer- / Winterzeit berücksichtigen?
Um welches System handelt es sich denn und was ist zeitmäßig eingestellt? Wird die Zeit von einem Zeitserver bezogen?

lG MOS
clSchak
clSchak 23.10.2017 um 16:40:05 Uhr
Goto Top
Hi

die Frage ist wohl etwas unglücklich formuliert, du musst den Task in diesem Fall auf 03:05 Uhr stellen, da er sonst ggf. doppelt ausgeführt - einmal bei 02:05 Sommerzeit und dann erneut bei 02:05 Winterzeit, wenn der doppelte Reboot kein Problem darstellt kannst es auf 02:05 Uhr stehen lassen, ansonsten würde ich das auch 03:05 stellen.

Alternativ ein Script erstellen das um 02:59 deinen Reboot um 02:05 als einmaligen Task anlegt und sich dann selbst deaktiviert damit es nicht erneut um 02:59 läuft.

Oder habt ihr evtl. eine ältere Oracle DB am laufen? Bei älteren Versionen kam es zu Problemen mit der Umstellung von Sommer/Winter/Sommerzeit und man sollte die Dienste in dem Zeitraum stoppen - habe das aber auch nur mal am Rande mitbekommen und hatte damit nicht direkt zu tun.

Gruß
@clSchak
departure69
departure69 23.10.2017 aktualisiert um 16:45:09 Uhr
Goto Top
Hallo.

Ich soll dieses Wochenende bei der Zeitumstellung einen Server um 02:05 Uhr (nach der "neuen" Winterzeit!) mittels Task neu starten lassen.


Wenn der Server seine Zeit automatisch korrekt umstellt (dies ist anzunehmende Standardeinstellung, wenn das nicht ausgeschaltet wurde), dann stellt der Server Sonntag früh um 03.00 Uhr um 1 Stunde auf 02.00 Uhr Normalzeit (was Du "Winterzeit" nennst, das ist die Normalzeit) zurück.

Wenn Du 02.05 Uhr für Deinen Task einstellst, macht er das ja noch nach Sommerzeit (da ja erst um 03.00 Uhr umgestellt wird), also für Deine Anforderung 1 Stunde zu früh. Und, wie @clSchak richtig bemerkt, 1 Stunde danach gleich nochmal.

Wenn Du 03.05 Uhr einstellst, stellt der Server ja kurz vorher (um 03.00 Uhr) die Zeit erstmal um eine Stunde auf Normalzeit zurück, dann vergeht bis zu Deiner Anforderung mehr als 1 Stunde länger als gewollt, also für Dich 1 Stunde zu spät.

Ich behaupte, in dieser Nacht ist Deine Anforderung nicht eindeutig zu lösen face-sad, egal, was Du einstellst, Du bist entweder eine Stunde zu früh (und hast 1 Stunde später nochmal einen Reboot) oder ein Stunde zu spät dran.


Viele Grüße

von

departure69
emeriks
emeriks 23.10.2017 aktualisiert um 17:21:23 Uhr
Goto Top
Hi,
es ist eigentlich ganz einfach. Erstell ein Flag. Ausführen nur, wenn Flag nicht da. z.B. eine simple Datei.
if exists C:\test.dat exit
echo. > c:\test.dat
shutdown.exe -r -f
Selbst wenn diese Batch jetzt 2x gestartet wird, so wird sie nur beim 1. Mal den Server booten.

Oder noch einfacher:
Nimm besser PSSHUTDOWN von Sysinternals.
Lass um 01:00 Uhr einen Task ausführen
psshutdown -r -f -t 02:05
PSSHUTDOWN wird dann einen Dienst aktivieren der einmalig um 02:05 Uhr den Server startet. Danach entfernt der Dienst sich selbst.

E.
clSchak
clSchak 23.10.2017 aktualisiert um 17:36:53 Uhr
Goto Top
@emeriks hehe gleicher Denkfehler wie ich face-smile dann startet der Server einmal zur Sommerzeit neu und nicht zur Winterzeit, der Task musst nach 02:05 erstellt werden, da er dann über das gewünschte Zeitfenster in der Sommerzeit weg ist und somit zwangsläufig zur Winterzeit ausgeführt wird.

Aber nett das mit PSSHUTDOWN - habe das auf unserem Verwaltungsserver installiert aber bisher nicht verwendet, kommt mit in unsere FAQ face-smile

Ich würde in diesem Fall das Tool von @emeriks verwenden, macht den geringsten Aufwand.

Edit / Add: den Task nur einmal ausführen lassen, dann wird der auch nicht doppelt erstellt - also "einmalige Ausführung" oder via Script den Task löschen.
emeriks
emeriks 23.10.2017 aktualisiert um 17:44:04 Uhr
Goto Top
He, he, ja hast Recht.
Dann also um 02:59 Uhr eine Batch startet, welche 360 mal pingt, danach der Schutdown. Man könnte auch auf das Timeout-Kommando setzen, aber das müsste man testen.
if exists C:\test.dat exit 
echo. > c:\test.dat
ping -n 360 localhost
shutdown -r -f
em-pie
em-pie 23.10.2017 aktualisiert um 18:02:57 Uhr
Goto Top
Moin,

ergänzend zu emeriks Code:

if exist C:\test.dat goto reboot
if not exist C:\test.dat goto wait

:wait
echo. > c:\test.dat
exit

:reboot
del c:\test.dat
shutdown -r -f
exit

beim ersten Durchlauf wird nur die test.dat erzeugt.
Ist die text.dat dann beim zweiten Durchlauf um 02:05 (Winterzeit) vorhanden, wird diese wieder gelöscht und der Reboot initiiert...

Feddich..

Gruß
em-pie

€dit: Syntaxfehler im Code behoben
emeriks
emeriks 23.10.2017 um 18:17:25 Uhr
Goto Top
Kann man so machen, doch warum?
Wenn die Datei stehen bleibt, dann hat man eine Bremse drin, bis man manuell eingreift. Das ist gut gegen nervöses Fingerzucken.