chronyd synct nicht bei Laptop-Start

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 01:14:21

Nabend Leute!

Ich habe auf drei Laptops das merwürdige Problem, dass chronyd nicht synct, wenn ich das Gerät starte und es dann eine WLAN-Verbindung bekommt. Der Service läuft, aber bei chronyc sources steht einfach gar keine Quelle.
Starte ich in dem Zustand den chronyd einmal neu (service chrony restart), so wird sofort gesynct. Ich habe die chrony.conf jetzt schon ein paarmal rauf und runter geprüft, einen Fehler finde ich einfach nicht. Ich habe den Eindruck, dass es irgendwie mit systemd bzw. der Reihenfolge der Dienste zusammenhängt. Jemand eine Idee, wie ich das herausfinden kann?

Benutzeravatar
cosinus
Beiträge: 3439
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: chronyd synct nicht bei Laptop-Start

Beitrag von cosinus » 24.01.2024 02:05:11

Warum nicht systemd-timesyncd?

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 07:33:37

Das geht irgendwie nicht so ganz auf meine Frage ein, aber: weil ich seit Ewigkeiten chrony nutze, weil es "früher" ohne chrony massive Probleme mit Zeitsprüngen gab. Ich weiß auch gerade nicht, ob der systemd-timesyncd mehrere unterschiedliche Quellen nutzen kann, so wie chrony. Außerdem mag ich poettering nicht ;)

Benutzeravatar
cosinus
Beiträge: 3439
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: chronyd synct nicht bei Laptop-Start

Beitrag von cosinus » 24.01.2024 09:11:32

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 07:33:37
Außerdem mag ich poettering nicht ;)
Dann darfst du aber auch kein Debian verwenden. Seit Debian 8 ist systemd fester Bestandteil.
Und ja, systemd-timesyncd unterstützt mehrere Quellen. Einfach nachinstallieren und konfigurieren in der Datei

Code: Alles auswählen

/etc/systemd/timesyncd.conf

niemand
Beiträge: 500
Registriert: 22.12.2023 16:35:53
Kontaktdaten:

Re: chronyd synct nicht bei Laptop-Start

Beitrag von niemand » 24.01.2024 09:16:58

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 01:14:21
Ich habe auf drei Laptops das merwürdige Problem, dass chronyd nicht synct, wenn ich das Gerät starte und es dann eine WLAN-Verbindung bekommt.
Mag’s ein Timingproblem sein? Steht irgendwas im Log, bzw. gibt ›systemctl status chrony‹ Hinweise?
„I fought in the Vim-Emacs-War.“ Quelle

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 10:26:03

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 01:14:21
Starte ich in dem Zustand den chronyd einmal neu (service chrony restart), so wird sofort gesynct.
Wie ist die Ausgabe von:

Code: Alles auswählen

systemctl cat chrony
?
Versuch mal mit zusätzlich:

Code: Alles auswählen

Requires=sys-subsystem-net-devices-wlan0.device
After=sys-subsystem-net-devices-wlan0.device
(wlan0 evtl. anpassen) via drop-in-Datei (oder gleichwertig), in der [Unit]-Section der (nativen oder generierten?) service-unit für chrony.

Benutzeravatar
MSfree
Beiträge: 10777
Registriert: 25.09.2007 19:59:30

Re: chronyd synct nicht bei Laptop-Start

Beitrag von MSfree » 24.01.2024 10:36:13

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 10:26:03
Versuch mal mit zusätzlich:

Code: Alles auswählen

Requires=sys-subsystem-net-devices-wlan0.device
After=sys-subsystem-net-devices-wlan0.device

Code: Alles auswählen

[Unit]
...
After=Network.target
...
[Service]
...
[Install]
WantedBy=nulti-user.target
sollte eigentlich reichen, damit der Prozeß es nach Etablierung des Netzwerks startet.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 11:10:35

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 10:26:03
Wie ist die Ausgabe von:

Code: Alles auswählen

systemctl cat chrony
?
Die ganzen Dinger, journalctl, /var/log usw. habe ich alle durch. Da stand exakt gar nichts, sonst hätte ich es weiter probiert. Im Forum fragen ist in der Regel für mich letzte Option, ich bin bestrebt, Probleme erstmal eigenständig zu lösen.
Versuch mal mit zusätzlich:

Code: Alles auswählen

Requires=sys-subsystem-net-devices-wlan0.device
After=sys-subsystem-net-devices-wlan0.device
(wlan0 evtl. anpassen) via drop-in-Datei (oder gleichwertig), in der [Unit]-Section der (nativen oder generierten?) service-unit für chrony.
Was bitte ist eine "Service-unit für chrony"? Und wo finde ich die? Ich habe da offenbar eine Wissenslücke.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 11:11:08

niemand hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 09:16:58
Mag’s ein Timingproblem sein? Steht irgendwas im Log, bzw. gibt ›systemctl status chrony‹ Hinweise?
Nope. Leider nein.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 11:13:27

cosinus hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 09:11:32
Dann darfst du aber auch kein Debian verwenden.
Nein. Das Eine schließt ja das Andere nicht aus.
Seit Debian 8 ist systemd fester Bestandteil.
Ich weiß. Schlimm das ;)
Und ja, systemd-timesyncd unterstützt mehrere Quellen. Einfach nachinstallieren und konfigurieren in der Datei

Code: Alles auswählen

/etc/systemd/timesyncd.conf
Wo ist denn der funktionale Unterschied zu chrony? Ich habe ja chrony irgendwann auch mal aus Gründen installiert, nämlich weil die Zeitsprünge, die mit ntp o.Ä. entstanden, ziemlich störend waren. Damals, als Rechner noch eine 2032 als Stützbatterie hatten...

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 11:21:14

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 11:10:35
Was bitte ist eine "Service-unit für chrony"? Und wo finde ich die?
Wie ist die Ausgabe von:

Code: Alles auswählen

systemctl list-units --all | grep -i chrony
?

Benutzeravatar
cosinus
Beiträge: 3439
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: chronyd synct nicht bei Laptop-Start

Beitrag von cosinus » 24.01.2024 11:21:36

Die genauen Unterschiede kann ich dir nicht nennen, aber die Aufgabe, die systemd-timesyncd erledigt, ist die gleiche. War nur als Alternative gedacht. Ich bin da eher pragmatisch und lege mich nicht immer auf ein Tool/Dienst fest.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 11:33:15

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 11:21:14
Wie ist die Ausgabe von:

Code: Alles auswählen

systemctl list-units --all | grep -i chrony
?
Liefere ich heute Abend. Bin jetzt unterwegs und habe keine Möglichkeit, das Laptop zu nutzen.

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 11:43:38

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 11:33:15
Bin jetzt unterwegs ...
BTW: Bei den ganzen Abhängigkeiten die systemd ermöglicht, muss man auch unterscheiden zwischen:
the network connectivity has been reached (... wäre möglich)
und
the network connectivity is currently available (tatsächlich vorhanden weil schon getestet)
Dort wo tatsächlich schon vorhanden/getestet sein muss, benutze ich immer:

Code: Alles auswählen

After=systemd-time-wait-sync.service
Requires=systemd-time-wait-sync.service
Aber das geht bei dir nicht (... bei mir geht es weil ich systemd-timesyncd benutze ;-) ).
Wenn der chronyd daemon evtl. auf einer IP-Adresse lauschen soll, die zum Zeitpunkt seines Starts noch nicht zugewiesen ist, kannst Du auch:

Code: Alles auswählen

net.ipv4.ip_nonlocal_bind = 1
benutzen.

Benutzeravatar
MSfree
Beiträge: 10777
Registriert: 25.09.2007 19:59:30

Re: chronyd synct nicht bei Laptop-Start

Beitrag von MSfree » 24.01.2024 11:56:15

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 11:13:27
Ich habe ja chrony irgendwann auch mal aus Gründen installiert, nämlich weil die Zeitsprünge, die mit ntp o.Ä. entstanden, ziemlich störend waren.
NTP hat noch nie Zeitsprünge gemacht. Die Differenz zu einen Zeitserver wurde immer gleitend durchgeführt, die Rechnerzeit wurde also fließend beschleunigt oder gebremst, bis die Uhrzeit mit dem Zeitserver übereingestimmt hat.

Das Problem mit NTP ist, daß es komplett versagt, wenn die Differenz zwischen Rechnerzeit und Zeitserver mehr als 20 Minuten beträgt. In diesem Fall stellt NTP überhaupt keine Synchronisation her. Abhilfe ist und war, einmalig beim Booten die Zeit vom Zeitserver zu holen und die Rechnerzeit damit einmal hart zu setzen, bevor ntpd gestartet wird. Das ist zwar im Prinzip ein Sprung, wird aber nur einmalig und beim Booten gemacht, so daß das keine Prozesse stören kann. Für das einmalige Holen der Zeit beim Booten ist Debianntpdate zuständig, was du vermutlich nie installiert hattest.

rhHeini
Beiträge: 2312
Registriert: 20.04.2006 20:44:10

Re: chronyd synct nicht bei Laptop-Start

Beitrag von rhHeini » 24.01.2024 12:20:13

Du brauchst erst einmal Debianntp und Debianntpdate. Zudem hat sich bei Bookworm ntp in ntpsec geändert, die .conf findet man jetzt in /etc/ntpsec.

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 12:21:14

Alternativ gibt es auch sntp bzw. ntpdig (als ntp-Client) zum setzen der Uhrzeit/Datum beim booten.

Code: Alles auswählen

apt policy sntp

Code: Alles auswählen

:~ $ systemctl status sntp
● sntp.service - SNTP-client to set the local system's time at boot time
     Loaded: loaded (/etc/systemd/system/sntp.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Tue 2024-01-23 11:48:19 CET; 24h ago
   Main PID: 579 (code=exited, status=0/SUCCESS)
        CPU: 70ms
Für systemd-timesyncd muss/soll dann "set-ntp false" konfiguriert/gesetzt sein und nach exit mit success wieder "set-ntp true".
https://manpages.debian.org/bullseye/sn ... .1.en.html
https://manpages.debian.org/bookworm/sn ... .1.en.html

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 19:07:12

Was ihr alles so wissen wollt 8)
Ich liefere mal. Wie gesagt, mir ist nichts aufgefallen:

Code: Alles auswählen

# chronyc activity
200 OK
0 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address
Es steht auch eine halbe Stunde nach Einschalten noch so wie beim obigen Befehl.

Code: Alles auswählen

# systemctl status chrony
● chrony.service - chrony, an NTP client/server
     Loaded: loaded (/lib/systemd/system/chrony.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-01-24 18:35:08 CET; 3min 22s ago
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
    Process: 849 ExecStart=/usr/sbin/chronyd $DAEMON_OPTS (code=exited, status=0/SUCCESS)
   Main PID: 863 (chronyd)
      Tasks: 1 (limit: 4607)
     Memory: 1.6M
        CPU: 83ms
     CGroup: /system.slice/chrony.service
             └─863 /usr/sbin/chronyd

Jan 24 18:34:58 ds7210 chronyd[863]: Source 195.145.119.188 offline
Jan 24 18:35:00 ds7210 chronyd[863]: Source 130.149.17.21 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 192.53.103.103 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 130.149.17.8 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 131.188.3.220 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 129.169.1.153 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 192.53.103.104 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 195.145.119.188 online
Jan 24 18:35:06 ds7210 chronyd[863]: System's initial offset : 18.966582 seconds fast of true (slew)
Jan 24 18:35:08 ds7210 systemd[1]: Started chrony.service - chrony, an NTP client/server.

Code: Alles auswählen

# systemctl cat chrony
# /lib/systemd/system/chrony.service
[Unit]
Description=chrony, an NTP client/server
Documentation=man:chronyd(8) man:chronyc(1) man:chrony.conf(5)
Conflicts=openntpd.service ntp.service ntpsec.service
Wants=time-sync.target
Before=time-sync.target
After=network.target
ConditionCapability=CAP_SYS_TIME

[Service]
Type=forking
PIDFile=/run/chrony/chronyd.pid
EnvironmentFile=-/etc/default/chrony
User=_chrony
# Daemon is started as root, but still sandboxed
ExecStart=!/usr/sbin/chronyd $DAEMON_OPTS

CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE
CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_KILL CAP_LEASE CAP_LINUX_IMMUTABLE
CapabilityBoundingSet=~CAP_MAC_ADMIN CAP_MAC_OVERRIDE CAP_MKNOD CAP_SYS_ADMIN
CapabilityBoundingSet=~CAP_SYS_BOOT CAP_SYS_CHROOT CAP_SYS_MODULE CAP_SYS_PACCT
CapabilityBoundingSet=~CAP_SYS_PTRACE CAP_SYS_RAWIO CAP_SYS_TTY_CONFIG CAP_WAKE_ALARM
DeviceAllow=char-pps rw
DeviceAllow=char-ptp rw
DeviceAllow=char-rtc rw
DevicePolicy=closed
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes
PrivateTmp=yes
ProcSubset=pid
ProtectControlGroups=yes
ProtectHome=yes
ProtectHostname=yes
ProtectKernelLogs=yes
ProtectKernelModules=yes
ProtectKernelTunables=yes
ProtectProc=invisible
ProtectSystem=strict
# Used for gps refclocks
ReadWritePaths=/run
RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
RestrictNamespaces=yes
RestrictSUIDSGID=yes
SystemCallArchitectures=native

Code: Alles auswählen

# systemctl list-units --all | grep -i chrony
  chrony.service                                                                                             loaded    active   running   chrony, an NTP client/server

Code: Alles auswählen

# journalctl -fu chrony
Jan 24 18:34:58 ds7210 chronyd[863]: Source 195.145.119.188 offline
Jan 24 18:35:00 ds7210 chronyd[863]: Source 130.149.17.21 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 192.53.103.103 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 130.149.17.8 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 131.188.3.220 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 129.169.1.153 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 192.53.103.104 online
Jan 24 18:35:00 ds7210 chronyd[863]: Source 195.145.119.188 online
Jan 24 18:35:06 ds7210 chronyd[863]: System's initial offset : 18.966582 seconds fast of true (slew)
Jan 24 18:35:08 ds7210 systemd[1]: Started chrony.service - chrony, an NTP client/server.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 19:10:54

Ich habe chronyd auf sieben Maschinen laufen, drei davon sind Laptops (von denen nur zwei regelmäßig genutzt werden).
Ich möchte es mir ungern einfach machen und auf was Anderes wechseln (weil ich das auch wieder auf allen Rechnern machen müsste, zwecks einfacherer Wartbarkeit), sondern ich möchte gerne verstehen, was da schief läuft, und das Problem - sofern möglich - lösen!

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 19:46:45

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 19:07:12
Es steht auch eine halbe Stunde nach Einschalten noch so wie beim obigen Befehl.

Code: Alles auswählen

Jan 24 18:34:58 ds7210 chronyd[863]: Source 195.145.119.188 offline

Code: Alles auswählen

EnvironmentFile=-/etc/default/chrony
Das sieht alles Ok aus.
Wie sind jetzt die Ausgaben von:

Code: Alles auswählen

date && rdate -4npu 195.145.119.188

Code: Alles auswählen

cat /etc/default/chrony
?

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 20:06:08

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 19:46:45
Das sieht alles Ok aus.
Sag ich ja. Ich kann einfach nichts Auffälliges finden.

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 20:04:44 CET 2024
-bash: rdate: Kommando nicht gefunden.

Code: Alles auswählen

# cat /etc/default/chrony
# This is a configuration file for /etc/init.d/chrony and
# /lib/systemd/system/chrony.service; it allows you to pass various options to
# the chrony daemon without editing the init script or service file.

# Options to pass to chrony.

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 20:17:36

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 20:06:08

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 20:04:44 CET 2024
-bash: rdate: Kommando nicht gefunden.
rdate muss noch installiert werden:

Code: Alles auswählen

apt install rdate
danach rebooten und _vor dem manuellen restart_ von chrony, die Ausgaben von:

Code: Alles auswählen

date && rdate -4npu 195.145.119.188
systemctl status chrony
netstat -tulpane | grep -i chrony
posten.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 20:57:49

Ja, das sehe ich. Ich installiere aber in der Regel nicht einfach stumpf irgendwas. Es wäre nett, wenn Du mir noch verrätst, wofür Du das benötigst?

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 21:01:03

Hab's mal gemacht:

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 20:59:14 CET 2024
Wed Jan 24 20:59:14 CET 2024
Bringt mich jetzt nicht wirklich weiter, weil immer noch (Laptop lief die ganze Zeit):

Code: Alles auswählen

# chronyc tracking
Reference ID    : 7F7F0101 ()
Stratum         : 10
Ref time (UTC)  : Wed Jan 24 19:59:45 2024
System time     : 0.000000068 seconds slow of NTP time
Last offset     : +0.000000000 seconds
RMS offset      : 0.000000000 seconds
Frequency       : 20.699 ppm slow
Residual freq   : +0.000 ppm
Skew            : 0.000 ppm
Root delay      : 0.000000000 seconds
Root dispersion : 0.000000000 seconds
Update interval : 0.0 seconds
Leap status     : Normal
und

Code: Alles auswählen

# chronyc activity
200 OK
0 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address
Hier mag die Zeit nicht sonderlich driften, aber ich habe ein anderes Gerät, da geht sie wegen meines Problem mittlerweile mehr als sieben Minuten falsch.

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 24.01.2024 21:03:32

Und jetzt einfach mal den Service restartet:

Code: Alles auswählen

# service chrony restart
# chronyc activity
200 OK
12 sources online
0 sources offline
3 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

# chronyc tracking
Reference ID    : 83BC03DC (ntp0.rrze.uni-erlangen.de)
Stratum         : 2
Ref time (UTC)  : Wed Jan 24 20:02:26 2024
System time     : 0.000000263 seconds fast of NTP time
Last offset     : -0.001046101 seconds
RMS offset      : 0.001046101 seconds
Frequency       : 20.699 ppm slow
Residual freq   : -171.038 ppm
Skew            : 0.435 ppm
Root delay      : 0.038138401 seconds
Root dispersion : 0.008887082 seconds
Update interval : 1.6 seconds
Leap status     : Normal
Ich versteh's nicht.

Antworten