NTP

Uhrzeit eines Debian-Rechners mit einem Zeitserver abgleichen:


Zuerst muss das NTP-Paket installiert werden:

apt-get install ntp

Den Inhalt der Datei /etc/ntp.conf löschen und in Ihr Servereinträge erstellen, von denen die Zeit geholt werden soll.

mcedit /etc/ntp.conf
tinker panic 0 # gib auch bei großen Zeitabweichungen nicht auf
server = 192.168.1.2 iburst dynamic
server = meinNTPserver.my.do.main iburst dynamic
restrict -4 default kod notrap nomodify nopeer
# hier muss die freigegebnen IP-Ranges angegeben werden, Beispiel:
restrict 192.168.123.0 mask 255.255.255.0
restrict 192.168.111.0 mask 255.255.255.0
# ich antworte auf Suchbroadcast aus den beiden Netzen und biete mich als NTP-quelle an:
broadcast 192.168.123.255
broadcast 192.168.111.255
disable auth

Anschließend muss der Dienst neu gestartet werden:

/etc/init.d/ntp restart

Wenn Windowsserver im Netz vorhanden sind, kann man auch diese benutzen, da diese auch eine ntp-Dienst zur Verfügung stellen.
Die Uhrzeit ist besonders bei einer Domänenanbindung eines Linuxservers wichtig.
Bei mehr als 5 Minuten Zeitunterschied zwischen Client und Server wird die Authentifizierung vom Server abgelehnt.
typische Fehlermeldung : Timeskew to great.
Zeit manuell abgleichen:

/etc/init.d/ntpd stop
ntpdate meinserver
#oder (suse 11.2)
sntp -P no -r meinserver
/etc/init.d/ntpd start


zeige mir die Abweichungen der in /etc/ntp.conf konfigurierten Server zum lokalen Rechner an:
Interessant ist hier der Wert von offset. Das sind die Abweichungen in Millisekunden.

ntpq -p

zeige mir jetzt die Abweichungen(offset) in Sekunden an:

ntpdc -p 

zeige mir die Abweichungen auf einem Linux-PC mit installiertem Winbind an:

net time -S meinTimesrv

ändere die Zeit sofort auf den gleichen Wert meines Servers:

/etc/init.d/ntp stop
net time set -S meinTimesrv
/etc/init.d/ntp start

zeige mir die lokale Zeit unter SUSE:

rcntp status

zeige mir die lokale Zeit :

date +%T

zeige mir die Tageszahl:

date +%d

zeige mir das Datum in amerikanischem Format:

date +%D

zeige mir das Jahr(16):

date +%y

zeige mir das Jahr(2016):

date +%Y

zeige mir die Wochennummer:

date +%V

zeige mir den Wochentag als Wort(Wednesday) an:

date +%A

zeige mir den Wochentag als Abkürzung(Wed) an:

date +%a

zeige mir den Monat als Zahl an:

date +%H

zeige mir den Monat als Abkürzung(Oct) an:

date +%h

zeige mir die Uhrzeit an(09:14):

date +%R  

zeige mir die aktuelle Minute an:

date +%M

zeige mir die interne Hardwareuhrzeit an:

cat /proc/driver/rtc


einen eigenen Zeitserver aufsetzen (port 37):


Es soll nur ein Server sich die Zeit aus dem Internet holen alle anderen sollen sich die Zeit von meinem neuen Server holen.
Zuerst muss das NTP-Paket und der xinetd installiert werden:

apt-get install ntp xinetd

Dann muss die Datei /etc/ntp.conf mit Servereinträgen editiert werden:

...
#eventuell andere server auskommentieren
server ptbtime2.ptb.de iburst
...

Dann muss die Datei /etc/xinetd.d/time editiert werden. Darin werden alle disable-Einstellungen auf „no“ gesetzt werden.
(siehe auch XINETD)
Dann muss noch der xinetd neu gestartet werden:

/etc/init.d/xinetd restart

Dann sollte noch der Server über den DHCP-Server als timeserver bekannt gemacht werden.
Serveroptionen 004 + 042
Auf den Maschinen ohne DHCP muss der Server manuell in die /etc/ntp.conf eingetragen und der jeweilige lokale Ntp-Dienst neu gestartet werden.

Zeitzone eines Servers ändern

dpkg-reconfigure tzdata
#oder
tzselect
#oder
timedatectl set-timezone Europe/Berlin


Zeitzone eines bestimmten Benutzers ändern:

in datei ~/.profile eintragen:

TZ ='Europe/Gibraltar';export TZ


Zeit mittels systemd stellen

apt-get remove ntp

Datei /etc/systemd/timesyncd.conf editieren

[Time]
NTP=mylocalntpsrv

dann:

systemctl enable systemd-timesyncd.service
timedatectl set-ntp true
systemctl restart  systemd-timesyncd.service
timedatectl show
timedatectl status
timedatectl timesync-status
timedatectl set-timezone Europe/Berlin


zurück