Wo ist definiert, wie der Lenny-Timer betrieben wird?

#1869383
Lesenswert?

Einmalig: ntpdate aurufen. Weiss grad nicht ob das per 
/etc/init.d/sonstwas automatisch geschieht.

Permanent: ntp installieren, läuft dann automatisch als Service, und 
ggf. /etc/ntp.conf einstellen. Nach Start 10min warten, es dauert etwas 
bis stabiler Status per "ntpq -p".
OP #1869465
Lesenswert?

Ich hab noch ein anderes Problem. Ich habe die Hardwareuhr gesetzt mit

   hwclock --localtime --set --date="9/24/2010 17:47:00"

In /etc/adjtime stand danach in der letzten Zeile LOCAL.

Dann hab ich die Hütte rebootet und die RTC im BIOS angesehen und dort 
lief sie noch/wieder auf UTC. Offenbar gibts da noch irgendwo eine 
konkurrierende Einstellung.

> Obacht: NTP synced nur, wenn die Zeit schon vorher einigermassen passt,

Ja, das war mir früher schonmal aufgefallen. Das gibt insbesondere dann 
Ärger, wenn die RTC auf Local Time läuft und die Zeit umgestellt wird. 
Irgendwo bei ntp gibts da ein Schräubchen, wenn man das auf 65 min 
stellt, dann gehts.
#1869471
Lesenswert?

Uhu Uhuhu schrieb:

>    hwclock --localtime --set --date="9/24/2010 17:47:00"

Das setzt zwar die Hardwareuhr, nicht aber die Linux-Uhr. Im Shutdown 
wird evtl. automatisch ein hwclock durchgeführt, --systohc oder so, d.h. 
deine Änderung wird dann überschrieben.

Besser: Mit date oder ntpdate die Linux-Uhr setzen, dann
hwclock --systohc

Es kann auch sein, dass UTC/localtime noch woanders definiert wird. Im 
Ubuntu beispielsweise in /etc/default/rcS, woraus vmtl. der hwclock 
Aufruf abgeleitet wird.
#1869515
Lesenswert?

Uhu Uhuhu schrieb:

> Hm, ntpdate meint: ntpdate[2390]: no servers can be used, exiting
> In /etc/ntp.conf sind zwei Server eingetragen.

Tja, muss ich das Englisch wirklich übersetzen? Ein Server der nicht 
servt ist kein Server. Man kann ntpdate auch mit Parameter aufrufen.

Hab grad kein lenny parat, aber beim VDR (etch Basis) steht die Liste 
für /etc/init.d/ntpdate in /etc/default/ntpdate.
OP #1869525
Lesenswert?

Na ja, übersetzen kann ich mir das auch, aber die Formulierung ist nicht 
gerade sonderlich präzise. In der ntp.conf sind insgesamt 6 Server 
aufgeführt.

Aha:

  ntpdate ntpa2.kph.uni-mainz.de

gibt ein etwas anderes Ergebnis:

  ntpdate[2404]: the NTP socket is in use, exiting

Jetzt stellt sich natürlich die Frage, warum das so ist.
OP #1869546
Lesenswert?

Es bleibt mysteriös: Zumindest der letzt Server in meiner ntp.conf 
ntps1-2.uni-erlangen.de antwortet und ntpdate setzt die Zeit.

Die Debian-Server, die sowohl in /etc/ntp.conf, als auch 
/etc/default/ntpdate eingetragen sind, gehen auch, wenn ich sie auf der 
Kommandozeile für ntpdate angebe. ntpdate ohne Parameter antwortet mit

  ntpdate[2461]: no servers can be used, exiting

Eine Fehlerliste fehlt in /etc/default/ntpdate
#1869585
Lesenswert?

Uhu Uhuhu schrieb:
> In welcher Konfigurationsdatei ist hinterlegt, ob die RTC auf UTC, oder
> Local Time läuft? Kann man das nachträglich umsetzen?
1
man 5 rcS

--> nach "UTC" suchen.

Wenn der Rechner aber ausschliesslich für Linux genutzt wird, ist es 
empfehlenswert, die RTC auf UTC laufen zu lassen. Da gibt es dann auch 
garantiert keine Probleme mit Sommer-/Winterzeitumstellung, da UTC diese 
natürlich nicht kennt.

Die Linux-Systemuhr selbst läuft sowieso weder auf Localtime noch auf 
UTC. Stattdessen ist die Unix-Zeit (Zahl der Sekunden seit dem 1.1.1970) 
das Maß aller Dinge. NTP wiederum arbeitet immer mit UTC.

Wenn ein Programm Localtime verlangt, wird on the fly aus der Unixzeit 
anhand der Zeitzoneninformationen die korrekte Zeit berechnet, unter 
Berücksichtigung von Sommer-/Winterzeit, Schaltsekunden und allem 
Pipapo.

Dementsprechend leicht ist es auch, mal eben nachzusehen, wie die 
Uhrzeit in einer anderen Zeitzone gerade ist:
1
% date       
2
Fri Sep 24 19:24:04 CEST 2010
3
% TZ=EST date
4
Fri Sep 24 12:24:05 EST 2010

(EST=Eastern Standard Time, Ostküste USA)

> ntpdate ohne Parameter antwortet mit
>
>   ntpdate[2461]: no servers can be used, exiting

ntpdate schaut nicht selbst in /etc/default/ntpdate, das wird vom 
Init-Script gemacht (/etc/init.d/ntpdate), und ntpdate dann mit den 
Servern als Parameter aufgerufen.

Rufst du ntpdate von Hand auf, musst du schon die Server selbst auf der 
Kommandozeile angeben. In Verbindung mit einem der Parameter "-v" 
(verbose) bzw. "-d" (debug) zeigt dir ntpdate dann auch detailliert an, 
was mit den einzelnen Servern los ist. Oder du rufst das Init-Script 
auf:
1
/etc/init.d/ntpdate start

Andreas
OP #1869597
Lesenswert?

Andreas Ferber schrieb:
> Da gibt es dann auch
> garantiert keine Probleme mit Sommer-/Winterzeitumstellung, da UTC diese
> natürlich nicht kennt.

Doch die gibts in meinem Fall genau dann:
Der Rechner soll per RTC gestartet werden. Wenn die Lokalzeit 
umgeschaltet wird, geht das um eine Stunde falsch. Da er am Wochenende 
nichts machen soll, macht die Verschiebung, die es Sonntags nach der 
Zeitumstellung gibt, nichts; Hauptsache, die RTC wird dann auf ntp-Zeit 
gesetzt, dann stimmts wieder.

Zudem gibt es Kuddelmuddel mit Windowsrechnern im LAN, wenn die 
Linux-Maschinen auf UTC ticken - oder es war mal so, falls das jetzt 
gefixt ist.

Aber danke für den Tipp mit /etc/default/rcS - das war der Knoten.
OP #1869621
Lesenswert?

A. K. schrieb:
> Nur wenn du auf der gleichen Maschine wahlweise Windows und Linux
> bootest.

Nein. Du kriegst auch Probleme mit dem Änderungsdatum, wenn du Dateien 
zwischen einer Linux-Maschine, die auf UTC läuft und einer 
Windowsmaschine hin und her kopierst. Das hopst dann um den Offset auf 
UTC - obs noch so ist, weiß ich nicht, aber es war zumindest mal so.
#1869643
Lesenswert?

Uhu Uhuhu schrieb:

> Nein. Du kriegst auch Probleme mit dem Änderungsdatum, wenn du Dateien
> zwischen einer Linux-Maschine, die auf UTC läuft

Das hat reinweg garnichts mit der RTC zu tun. Wie Andreas oben schon 
schrieb läuft ein korrekt konfiguriertes Linux (wie Unix) intern 
weltweit immer auf die gleiche Art, nämlich in Sekunden ab 1970 in 
UTC-Zeitzone. Ganz egal ob die RTC auf UTC oder lokaler Zeit steht. 
Irgendwelche lokale Zeit entsteht ausschliesslich durch Umrechnung 
dieser internen Zeit.

Die RTC wird ausschliesslich dazu verwendet, ein startendes Linux 
einmalig mit der Zeit zu versorgen. Danach hat die RTC für das laufende 
System keinerlei Bedeutung mehr. Freilich hängt diese einmalige 
Einstellung davon ab, ob die RTC auf UTC läuft, weil das System ggf. 
eine lokale Zeit der RTC in die mit UTC Zeitzone arbeitende interne Zeit 
umrechnen muss.

Wenn also Probleme im Netzwerk auftreten, dann hat das mit Sicherheit 
nicht mit der Einstellung der RTC zu tun. Sondern mit einer 
Fehlkonfiguration. Beispielsweise indem man dem Linux sagt, die RTC 
liefe auf UTC während sie auf lokaler Zeit läuft, und zum "Ausgleich" 
die Zeitzone des Systems als UTC spezifiziert, obwohl man nicht in 
englischer Zeit lebt. Dann stimmt zwar scheinbar zunächst alles, weil 
die Uhrzeit korrekt angezeigt wird, aber tatsächlich hat man das System 
verarscht und es rächt sich auf seine Weise.
OP #1869649
Lesenswert?

Ich kann nur sagen, daß Samba genau dann keine Zicken gemacht hat, wenn 
ich bei der Installation alles auf Local Time eingestellt hatte.

Es kann natürlich sein, daß die Maschine dann insgeheim auf UTC lief. Es 
war jedenfalls bevor ich die Zeit per ntp bezogen habe und so fiel das 
nicht auf.

Aber einerlei. Das maßgebliche Argument heute ist das, was ich oben im 
Zusammenhang mit dem Start per RTC geschrieben habe.
OP #1871813
Lesenswert?

Neue Klippe: Der Rechnerstart über BIOS gesteuert von der RTC 
funktioniert plötzlich nicht mehr. Mit DSL auf der Platte hatte es noch 
prima funktioniert.

Dasselbe Problem habe ich auf relativ modernen Rechner, auf dem Ubuntu 
läuft. Obs bei dem jemals funktioniert hat, weiß ich nicht, denn es lief 
nie was anderes, als Ubuntu drauf.

Liegt das womöglich daran, daß ntp sich beim runterfahren an der RTC zu 
schaffen macht?


[Hinweis an die Windows-User: Diese Funktion hat nichts mit der 
Windows-Funktion zu tun, die den Rechner timergesteuert hochfährt! Die 
setzt nämlich bei Windows voraus, daß die Maschine nicht power down ist, 
sondern im hibernate.
Also liebe Windows-Freunde: Das hier ist definitiv was anderes!]

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren