• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Warum stimmt meine Systemzeit nicht mehr !

linuxER

Member
Hallo Freunde!
Seit der Zeitumstellung geht meine Uhr im Rechner nach'm Mond! Ich kann sie stellen wie ich will, nach jedem neustart ist sie wieder verkehrt... udn das auch nur jetzt nach der Zeitumstellung, woran kann das liegen!

Danke schon mal für die antworten (auf eine vielleicht ziemlich blöde Frage) *gg*

Bis dann

Frank!
 

admine

Ultimate Guru
Hi,

mach mal folgendes:

Konsole öffnen
su - root
cd /etc
rm adjtime

Im Anschluss daran einen Rechtsklick auf die Uhr und "Datum & Uhrzeit einstellen".

Das hat bei mir geholfen.
 

fabber

Newbie
Hi,
den gleichen Fehler hab ich auch gehabt aber mittlerweile tritt er nicht mehr auf keine Ahnung warum

M:)G
Fabian
 

ratibor

Member
Hallo Bonsai,

im Bios umstellen hab ich ausprobiert, jetzt hab ich zwei verschiedene Systemzeiten: eine im WIndows (das übernimmt die Zeit scheinbar aus dem Bios) und eine ganz andere im Linux. Das Problem scheint also doch noch wo anders zu liegen.
 

EvilGuy

Newbie
ich würde die systemzeit erstmal per zeitserver abgleichen (als root):
Code:
# ntpdate 192.53.103.103
--> zeitserver der physikalisch-technischen bundesanstalt in braunschweig.

das ganze läßt sich beim start automatisieren:
trage dazu folgende zeile in die /etc/ntp.conf ein:
Code:
server 192.53.103.103
damit aktualisiert das system die zeit direkt beim startvorgang.
vorraussetzung sind natürlich die installation von xntp, sowie der start des daemons beim systemboot.
 

roemi

Advanced Hacker
ich habe das
Konsole öffnen
su - root
cd /etc
rm adjtime

Im Anschluss daran einen Rechtsklick auf die Uhr und "Datum & Uhrzeit einstellen".
mit erfolg gemacht.
kann mir nun auch jemand sagen was ich da gemacht habe??
 

admine

Ultimate Guru
"Um die CMOS-Uhr zu "justieren'', werden in der Datei /etc/adjtime die tägliche Abweichung und das Datum der letzten Korrektur eingetragen. Jedes Mal, wenn das Programm clock zum Justieren der CMOS-Uhr aufgerufen wird, errechnet es aus dem Datum der letzten Korrektur und dem Fehlerfaktor die aktuelle Abweichung und korrigiert sowohl die Systemzeit als auch die CMOS-Uhr, sobald der Fehler mehr als eine Sekunde beträgt. Außerdem wird in der Datei /etc/adjtime die Zeitmarke der letzten Korrektur aktualisiert und der nicht korrigierte Rest zur vollen Sekunde als dritter Wert eingetragen."

Durch Umstellung auf Sommer/Winterzeit ist diese Datei verändert worden.
Durch löschen und einstellen der Zeit wird diese Datei neu erzeugt und die Korrekturberechnungen beginnen neu.

http://www.linux-ag.de/linux/LHB/node149.html
 

spunti

Hacker
bei mir ging bei suse9.0 die uhr ständig nach dem mond. seit 9.1 ist das bei mir nicht mehr so. ich bin seit dem aber auch so gut wie nie in windwos gesesen, kann also auch damit zusammenhängen.

spunti
 

deac

Member
Bonsai schrieb:
Stell im Bios um, dann ist ruhe!

das hilft nix, warum das so is hat eh schon admine beschrieben

einfach /etc/init.d/boot.clock durch ein leeres file ersetzen, schon versuch er den ganzen schmutz nimma. einmal die zeit einstellen und schon sollte es funzen.

bei mir is die uhrzeit immer um zwei std daneben also einfach ein script schreiben und beim booten ausführen lassen:
Code:
#!/bin/bash
#Script um die Zeit um eine Stunde zurückzustellen.
std=$(date | awk '{print $4}' | cut -b 1-2)
min=$(date | awk '{print $4}' | cut -b 4-5)
echo "Old Time: $std $min"
histd=$(echo $std|cut -b 1)
lostd=$(echo $std|cut -b 2)
if (($histd=="0")) ; then
   std=$lostd
fi
((std--))
((std--))

if (($std==-1)) ; then
   std=23
fi
if (($std==-2)) ; then
   std=22
fi
echo "New Time: $std $min"
super date -s "$std$min"
[/code]
 
Bei mir ist die Zeit auch immer 2h versetzt :evil: Wenn ich se dann richtig stell stimmts in WinXP nicht mehr. Was soll ich jetzt von dem oben genannten machen?

Des mit dem Skript hab ich nämlich nich ganz kapiert da ich Newbie bin :oops:

MfG
 

admine

Ultimate Guru
H,

ich hab mir ein Script gemacht, welches ich ausführe, sobald ich merke, dass die Uhrzeit nicht korrekt ist:
Code:
#!/bin/bash
ntpdate -u time.uni-freiburg.de ; hwclock --systohc

Allerdings habe ich seit der Aktion mit dem Löschen von adjtime
keine 2-Stunden-Differenzen mehr.
Nur geringe Abweichungen.
 
Ich hab jetzt adjtime gelöscht und dann die Uhr eingestellt. Ging immer noch nicht: Er stellt zwar die Linux-Uhr richtig aber die BIOS-Uhr läuft dann 2h hinterher und Windows nimmt die BIOS-Uhr :(

Ich kapier nicht wie des mit dem Script funktioniert :oops: könnte mir des jemand erklären(falls des Script über mir :roll: überhaupt funzt :p )

MfG
 

admine

Ultimate Guru
KeineAhnung schrieb:
Ich hab jetzt adjtime gelöscht und dann die Uhr eingestellt. Ging immer noch nicht: Er stellt zwar die Linux-Uhr richtig aber die BIOS-Uhr läuft dann 2h hinterher und Windows nimmt die BIOS-Uhr :(

Ich kapier nicht wie des mit dem Script funktioniert :oops: könnte mir des jemand erklären(falls des Script über mir :roll: überhaupt funzt :p )

MfG

Worauf ist denn deine Rechneruhr im Linux eingestellt?
Da win die Bios-Zeit nimmt, sollte man im Dualboot-System mit Win
auch im Linux UTC (GMT) einstellen und nicht auf Ortszeit gehen.

Bei einem reinem Linux-Rechner macht sich Ortszeit besser.
 

deac

Member
KeineAhnung schrieb:
Ich hab jetzt adjtime gelöscht und dann die Uhr eingestellt. Ging immer noch nicht: Er stellt zwar die Linux-Uhr richtig aber die BIOS-Uhr läuft dann 2h hinterher und Windows nimmt die BIOS-Uhr :(

Ich kapier nicht wie des mit dem Script funktioniert :oops: könnte mir des jemand erklären(falls des Script über mir :roll: überhaupt funzt :p )

MfG

das script funzt sicher

std=$(date | awk '{print $4}' | cut -b 1-2) #aktuelle stunde herausfinden
min=$(date | awk '{print $4}' | cut -b 4-5) #minuten
echo "Old Time: $std $min" #zeit ausgeben
histd=$(echo $std|cut -b 1) #erste ziffer der stunden
lostd=$(echo $std|cut -b 2) #zweite ziffer der stunden
if (($histd=="0")) ; then
std=$lostd #wenn kleiner 10 wird der 0er weggeschnitten
fi #sonst gibts fehler beim rechnen
((std--)) #minus 1 x2
((std--))

if (($std==-1)) ; then
std=23 #das hier is wenns 1 uhr war ->23
fi
if (($std==-2)) ; then
std=22 #wenns 0 uhr war -> 22
fi
echo "New Time: $std $min" #neue zeit ausgeben
super date -s "$std$min" #zeit setzen

super is ein programm wie sudo nur besser
super kannst weglassen, musst das script halt mit root rechten starten!!

dies verändert bei mir nicht die bios zeit!! dh im Windows stimmt die zeit auch immer
dieses script muss bei jedem linuxstart ausgeführt werden
ich habs in /etc/init.d/boot.local

mfg
 

Bonsai

Advanced Hacker
Häh was wie? Willst Du wissen, ob Du das immer wieder ausführen musst? Du kannst das Script, wie beschrieben beim Booten ausführen lassen, oder Du legst einen Cronjob an, der jede Stunde mal die neue Zeit holt.
 

wolfsohn

Member
reomi:
lass es 2 oder 3 wochen falsch gehen und stelle dann wieder richtig, dann muesste suse die abweichung in der biosuhr kappiert haben.
je oefter du das teil ansonsten stellst um so ungenauer wird sie, gerade bei niegelnagel neuen board's.
hatte ich auch schon.... :wink:
 
Oben