# localtime problem

## KD

Hallo,

ich habe ein problem mit der uhr unter meinem gentoo, also die ist auf UTC eingestellt also immer wenn ich boote wird clock auf UTC gesetzt obwohl ich in den rc.conf Clock="local" habe. 

den /etc/localtime habe ich auch auf die richtige stadt gesetzt also ich weiss leider nicht wo das problem liegt dass die uhr immer eine stunde später ist.

lg KD

----------

## Earthwings

Das Problem ist nicht zufällig nach der Zeitumstellung von Sommerzeit auf Winterzeit aufgetaucht? Mal /etc/adjtime gelöscht?

----------

## c07

 *KD wrote:*   

> immer wenn ich boote wird clock auf UTC gesetzt obwohl ich in den rc.conf Clock="local" habe.

 

Was ist "clock"? Das UTC bezieht sich nicht auf die Uhr, die du normalerweise siehst, sondern auf die Hardwareuhr, die du so leicht gar nicht auslesen kannst. Poste doch mal die Ausgabe von

```
# date; hwclock -ur; hwclock -r --localtime; cat /etc/adjtime /etc/timezone
```

Dass du selber im BIOS für die Zeitumstellung sorgen musst, wenn du nicht UTC verwendest, ist dir schon bekannt? Sinnvoll ist das nur dann, wenn es ein anderes OS erledigt. Wenn du die Zeitumstellung im laufenden Betrieb machst und dabei nicht hwclock --noadjfile verwendest, kriegst du ziemlich sicher Probleme mit adjtime, weil dann angenommen wird, dass deine Uhr chronisch falsch geht und das automatisch kompensiert wird.

----------

## gentop

Kann das vieleicht noch mal jemand genauer erklähren? Ich hab da nähmlich 'n ähnliches Problem. Ich habe bei der Installation den Link /etc/localtime auf "Berlin" erstellt. Dann hab ich in der rc.conf die Zeit auf LOCAL umgestellt und mit "date" die aktuelle Zeit angegeben. Aber nach jedem Neustart hat er wieder eine total hinterherhinkende Zeit.

Wo ist mein Denkproblem.... ???

Gruß "gentop"

----------

## c07

Wenn du mit date die Zeit stellst, ändert das an der Hardwareuhr erst mal gar nichts. Normalerweise wird sie aber beim Runterfahren in /etc/init.d/clock stop synchronisiert. Wenn du die Uhr um 1 Stunde zurückgestellt hast und das letzte Runterfahren 24 Stunden her war, stellt hwclock fest, dass die Uhr offenbar in 23 Stunden 1 Stunde vorgegangen ist (sonst hättest du ja keinen Grund gehabt, sie zu stellen). Also schreibt es in /etc/adjtime, dass die Uhr ungefähr 3760 Sekunden pro Tag vorgeht.

Beim nächsten Booten wird dann in /etc/init.d/clock start der Wert aus /etc/adjtime gelesen. Wenn das z.B. 12 Stunden später ist, nimmt hwclock an, dass die Uhr seitdem wieder 1880 Sekunden vorgegangen ist und stellt sie deshalb um gut 31 Minuten zurück. Wenn du sie dann wieder mit date vorstellst, fängt das Spiel wieder von vorn an.

Wenn du die Hardwareuhr auf lokaler Zeit hast, kannst du keine Zeitzonenänderungen mehr unter Linux durchführen, ohne schnell Probleme zu bekommen. Deshalb sollte sie immer auf UTC sein, außer wenn ein anderes Betriebssystem sich um die Umstellung kümmert (dann merkt hwclock nichts davon).

Ob du ein Problem mit adjtime hast, kannst du an der ersten Zahl in /etc/adjtime sehen. Die gibt an, wie viel Sekunden deine Uhr pro Tag falsch geht. Bei typischen PC-Uhren sollte das vom Betrag her nicht mehr als 5 sein. Wenn es wesentlich mehr ist, hast du entweder eine sehr miese Uhr, die Batterie ist ziemlich leer, oder adjtime ist korrupt. In letzterem Fall kann man es einfach löschen, dann wird es später neu angelegt.

Details siehe in man hwclock.

----------

## gentop

OK - werd mal mein Glück versuchen. Danke erstmal.

----------

## gentop

OK. Funzt alles. Danke für die Tips  :Wink: 

----------

## maigret

Hat viel geholfen! Vielen Dank

----------

