Zeitdifferentz zwischen Linux und Windows

Post Reply
Message
Author
highjumper

Zeitdifferentz zwischen Linux und Windows

#1 Post by highjumper »

Hallo ich hab ein Problem: Ich verwende ein Linux Server mit SLES 9 und eun Windows 2000 Server. Auf dem Linuxserver habe ich ein Laufwerk des Windowsservers gemappt. Wenn ich nun in das gemappte Laufwerk eine Datei kopiere wird sie mit einem Zeitstempel versehen (Aktuelle Zeit minus eine Stunde) der der Winterzeit entspricht. Beide Server sind aber auf Sommerzeit umgestellt. Linux steht in CEST und Windows in GMT +1 und ist auf Sommerzeit gestellt.

Woher kann der Zeitversatz kommen?

Vielen Dank
highjumper

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Unix und Windows handhaben die Zeitzonen und auch die Sommerzeitumstellung unterschiedlich. Unix hat eine monotone Zeit in Sekunden seit dem 1.1.1970 0:00 UTC. (negative Zahlen geben die Zeit vor diesem Zeitpunkt an). Alle *angezeigten* Zeiten werden hingegen um die Zeitzone und die zu dem Zeitpunkt gültige Sommerzeit korrigiert.

Das ist natürlich die einzig richtig Methode, es zu tun, denn wenn jemand den Server in eine andere Zeitzone schleppt, oder auch nur Dateien kopiert, stimmen die Zeitstempel weiterhin.

Und wenn es eine funktionierende, genormte, richtige Methode gibt, kann man sich sicher sein, dass Microsoft es natürlich *nicht so* macht: MS-Windows stellt die *Systemuhr* auf die Sommerzeit um und zum Winter zurück, so dass Zeitstempel in Dateien die aktuelle Uhrzeit auf dem Rechner dokumentieren. Mit diesem System haben Dateien nur dann dieselbe Zeit, wenn alle Rechner dieselbe Zeitzone benutzen und dasselbe Umstellschema benutzen.

Außerdem führt dies dazu, dass MS-Windows den ersten und den zweiten Durchlauf der Zeit zwischen 2Uhr und 3Uhr während einer Winterzeitumstellung nicht auseinanderhalten kann. Toll!

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

highjumper

#3 Post by highjumper »

OK, das hab ich verstanden, aber wie löse ich mein Problem? Wenn ich jetzt auf einem der beiden Server die Zeitzone änder, bekomme ich zwar bei den verschobenen Dateien die richtige Zeit, aber alle anderen sind falsch?!

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

Die Windowsrechner musst du so einstellen, dass sie die Zeit per NTP holen (bspw. vom Linuxrechner). NTP verteilt grundsätzlich UTC, so dass die Windowsrechner ihr eigenes Schema dafür aufgeben müssen.

Als Admin in cmd.exe z.B.

Code: Select all

> net time /setsntp&#58;<IP-DES_LINUXRECHNERS>
Oder so wie hier beschrieben:
http://www.a-m-i.de/tips/w32time/w32time.php

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Post Reply