chronyd synct nicht bei Laptop-Start

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 21:05:47

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 21:01:03
..., aber ich habe ein anderes Gerät, da geht sie wegen meines Problem mittlerweile mehr als sieben Minuten falsch.
Auch mit debian (12) und chrony? Wenn ja, warum testest Du nicht auf dem anderen Gerät?

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:18:59

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 20:17:36
danach rebooten und _vor dem manuellen restart_ von chrony, die Ausgaben von:
Oh, Entschuldigung, überlesen. Da das aber unnötig war, ändert es nichts am Ergebnis. Ich habe es dennoch für Dich mal gemacht:

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

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 21:13:35 CET 2024
Wed Jan 24 21:13:35 CET 2024

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 21:09:54 CET; 3min 47s ago
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
    Process: 848 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 21:09:44 ds7210 chronyd[863]: Source 131.188.3.220 offline
Jan 24 21:09:46 ds7210 chronyd[863]: Source 129.169.1.153 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 192.53.103.104 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 195.145.119.188 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 130.149.17.21 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 192.53.103.103 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 130.149.17.8 online
Jan 24 21:09:46 ds7210 chronyd[863]: Source 131.188.3.220 online
Jan 24 21:09:52 ds7210 chronyd[863]: System's initial offset : 18.899073 seconds fast of true (slew)
Jan 24 21:09:54 ds7210 systemd[1]: Started chrony.service - chrony, an NTP client/server.

Code: Alles auswählen

# netstat -tulpane | grep -i chrony
udp        0      0 0.0.0.0:123             0.0.0.0:*                           0          23347      863/chronyd         
udp        0      0 127.0.0.1:323           0.0.0.0:*                           0          23338      863/chronyd         
Jetzt starte ich chrony einmal neu, und voila, alles läuft:

Code: Alles auswählen

# chronyc activity
200 OK
15 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 21:16:30 CET 2024
Wed Jan 24 21:16:30 CET 2024

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 21:15:46 CET; 59s ago
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
    Process: 2138 ExecStart=/usr/sbin/chronyd $DAEMON_OPTS (code=exited, status=0/SUCCESS)
   Main PID: 2141 (chronyd)
      Tasks: 1 (limit: 4607)
     Memory: 1.0M
        CPU: 84ms
     CGroup: /system.slice/chrony.service
             └─2141 /usr/sbin/chronyd

Jan 24 21:15:38 ds7210 systemd[1]: Starting chrony.service - chrony, an NTP client/server...
Jan 24 21:15:38 ds7210 chronyd[2141]: chronyd version 4.3 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +>
Jan 24 21:15:38 ds7210 chronyd[2141]: Could not open command socket on [::1]:323
Jan 24 21:15:38 ds7210 chronyd[2141]: Frequency -20.699 +/- 0.435 ppm read from /var/lib/chrony/chrony.drift
Jan 24 21:15:38 ds7210 chronyd[2141]: Using right/UTC timezone to obtain leap second data
Jan 24 21:15:44 ds7210 chronyd[2141]: System's initial offset : 0.000108 seconds fast of true (slew)
Jan 24 21:15:46 ds7210 systemd[1]: Started chrony.service - chrony, an NTP client/server.
Jan 24 21:15:52 ds7210 chronyd[2141]: Selected source 195.145.119.188
Jan 24 21:15:52 ds7210 chronyd[2141]: System clock TAI offset set to 37 seconds
Jan 24 21:15:53 ds7210 chronyd[2141]: Selected source 131.188.3.220

Code: Alles auswählen

# netstat -tulpane | grep -i chrony
udp        0      0 0.0.0.0:123             0.0.0.0:*                           0          28265      2141/chronyd        
udp        0      0 127.0.0.1:323           0.0.0.0:*                           0          28263      2141/chronyd        
Der einzige Unterschied ist die Meldung Could not open command socket on [::1]:323 - die kommt, weil es hier kein IPv6 gibt. Aber selbst wenn ich den Daemon mit "-4" starte, ändert das nichts am Verhalten, nur die Meldung bzgl. IPv6 fehlt dann.

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:19:35

mat6937 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 21:05:47
dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 21:01:03
..., aber ich habe ein anderes Gerät, da geht sie wegen meines Problem mittlerweile mehr als sieben Minuten falsch.
Auch mit debian (12) und chrony? Wenn ja, warum testest Du nicht auf dem anderen Gerät?
Ja selbstverständlich. Ich teste nicht auf dem, weil es nicht greifbar ist. Die Installation ist aber identisch, das Problem auch, nur dass die Uhr auf dem hier verfügbaren Gerät nicht so stark driftet.

Nachtrag: ich habe jetzt gerade per ssh Zugriff auf das entfernte Laptop, dort ist der Drift sichtbar:

Code: Alles auswählen

# date && rdate -4npu 195.145.119.188
Mi 24. Jan 21:33:57 CET 2024
Wed Jan 24 21:31:25 CET 2024
Dort ist dann nach einem service restart chrony endlich angepasst worden:

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 21:36:07 CET; 1min 46s left
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
    Process: 8471 ExecStart=/usr/sbin/chronyd $DAEMON_OPTS (code=exited, status=0/SUCCESS)
   Main PID: 8473 (chronyd)
      Tasks: 1 (limit: 11662)
     Memory: 1020.0K
        CPU: 40ms
     CGroup: /system.slice/chrony.service
             └─8473 /usr/sbin/chronyd

Jan 24 21:36:01 dibm systemd[1]: Starting chrony.service - chrony, an NTP client/server...
Jan 24 21:36:01 dibm chronyd[8473]: chronyd version 4.3 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IP>
Jan 24 21:36:01 dibm chronyd[8473]: Could not open command socket on [::1]:323
Jan 24 21:36:01 dibm chronyd[8473]: Frequency 7.964 +/- 0.317 ppm read from /var/lib/chrony/chrony.drift
Jan 24 21:36:01 dibm chronyd[8473]: Using right/UTC timezone to obtain leap second data
Jan 24 21:36:05 dibm chronyd[8473]: System's initial offset : 139.937480 seconds fast of true (slew)
Jan 24 21:36:07 dibm systemd[1]: Started chrony.service - chrony, an NTP client/server.
Jan 24 21:36:14 dibm chronyd[8473]: Selected source 192.53.103.104
Jan 24 21:33:55 dibm chronyd[8473]: System clock was stepped by -139.160438 seconds
Jan 24 21:33:55 dibm chronyd[8473]: System clock TAI offset set to 37 seconds
Wie man sieht, ist das fehlende IPv6 kein Problem, welches irgendwie aufhält. Es waren allerdings doch weniger als sieben Minuten.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 23:12:18

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 21:18:59

Code: Alles auswählen

# netstat -tulpane | grep -i chrony
udp        0      0 0.0.0.0:123             0.0.0.0:*                           0          23347      863/chronyd         
udp        0      0 127.0.0.1:323           0.0.0.0:*                           0          23338      863/chronyd         
Ergänze die Datei /etc/sysctl.conf mit der Zeile:

Code: Alles auswählen

net.ipv4.ip_nonlocal_bind = 1
reboote und poste nach dem reboot, die Ausgabe von:

Code: Alles auswählen

netstat -ulpane | grep -i 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 23:19:45

Gerne doch. Ich sehe keinen Unterschied:

Code: Alles auswählen

# netstat -tulpane | grep -i chrony
udp        0      0 0.0.0.0:123             0.0.0.0:*                           0          24319      866/chronyd         
udp        0      0 127.0.0.1:323           0.0.0.0:*                           0          24598      866/chronyd         

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 24.01.2024 23:26:26

dirk11 hat geschrieben: ↑ zum Beitrag ↑
24.01.2024 23:19:45
Ich sehe keinen Unterschied:

Code: Alles auswählen

# netstat -tulpane | grep -i chrony
udp        0      0 0.0.0.0:123             0.0.0.0:*                           0          24319      866/chronyd         
udp        0      0 127.0.0.1:323           0.0.0.0:*                           0          24598      866/chronyd         
Gibt es in der chrony.conf-Datei evtl. eine Zeile mit:

Code: Alles auswählen

bindaddress <IP-Adresse>
?

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 00:20:25

Nope.

Was mir gerade noch aufgefallen ist:
Das Problem betrifft die Rechner hier, die den network-manager nutzen - dabei ist es egal, ob ich per WLAN oder per eth0 im LAN bin. Die Rechner, welche per LAN fest eingerichtet im Netz sind, haben dieses Problem nicht.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 09:28:22

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 00:20:25
Was mir gerade noch aufgefallen ist:
Das Problem betrifft die Rechner hier, die den network-manager nutzen - dabei ist es egal, ob ich per WLAN oder per eth0 im LAN bin.
Dann trage in die service-unit des chrony die Abhängigkeit für:

Code: Alles auswählen

NetworkManager-wait-online.service
(via drop-in-Datei) ein.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 10:20:14

Kannst Du mir bitte erläutern, was das bedeutet? Was meinst Du mit "via drop-in Datei", und wo finde ich diese Service-unit? Das sagt mir nichts, ich musste systemd noch nicht anfassen, und ich möchte da nichts falsch machen. Früher lagen settings unter /etc/...

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 10:40:49

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 10:20:14
Kannst Du mir bitte erläutern, was das bedeutet?
Ist "NetworkManager-wait-online.service" überhaupt aktiviert?

Code: Alles auswählen

systemctl status NetworkManager-wait-online.service
?
Lt. manpage für systemctl:

Code: Alles auswählen

edit UNIT...
           Edit a drop-in snippet ...
NetworkManager-wait-online.service delays network-online.target until network is ready.
Quelle: https://www.networkmanager.dev/docs/api ... rvice.html

EDIT:

Wenn "NetworkManager-wait-online.service" aktiviert ist, brauchst Du nur:

Code: Alles auswählen

After=network-online.target
Siehe Quelle:
The systemd target network-online.target acts as a synchronization point for services to start after network is configured. Such services should order themselves After=network-online.target (and never After=NetworkManager-wait-online.service). NetworkManager-wait-online.service is a one-shot service that itself is ordered Before=network-online.target and this way delays the target until the network is configured.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 10:52:25

Der ist aktiv, ja.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 10:53:39

ich finde die Methode, das über irgendein "edit" zu machen, undurchsichtig. Wo wird das dann gespeichert?

Und: dann ist das in der chrony-unit hinfällig?

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 10:55:52

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 10:52:25
Der ist aktiv, ja.
OK, dann editieren:

Code: Alles auswählen

systemctl edit chrony.service
und die [Unit]-Section mit der Zeile:

Code: Alles auswählen

After=network-online.target
ergänzen. Nach dem speichern rebooten und schauen ob es richtig funktioniert. Wenn das nicht der Fall ist, dann die vollständigen Ausgaben von:

Code: Alles auswählen

systemctl status NetworkManager-wait-online.service
systemctl cat chrony.service
posten.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 11:01:02

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 10:53:39
ich finde die Methode, das über irgendein "edit" zu machen, undurchsichtig. Wo wird das dann gespeichert?
Ja, weil Du das noch nie gemacht hast. Wo es gespeichert wird, wird dir nach dem reboot, die vollständige Ausgabe von:

Code: Alles auswählen

systemctl cat chrony
zeigen. Wenn Du willst kannst Du auch auf edit verzichten und das für die drop-in-Datei zuständige Verzeichnis manuell anlegen und die drop-in-Datei mit ihrem richtigen/geeigneten Inhalt, manuell erstellen:

Code: Alles auswählen

mkdir /etc/systemd/system/chrony.service.d

Code: Alles auswählen

nano /etc/systemd/system/chrony.service.d/addtarget.conf
Inhalt:

Code: Alles auswählen

[Unit]
After=network-online.target

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:05:16

Wollte ich sowieso hier dokumentieren. So ist der Ist-Status:

Code: Alles auswählen

# systemctl edit NetworkManager-wait-online.service
### Editing /etc/systemd/system/NetworkManager-wait-online.service.d/override.conf
### Anything between here and the comment below will become the new contents of the file




### Lines below this comment will be discarded

### /lib/systemd/system/NetworkManager-wait-online.service
# [Unit]
# Description=Network Manager Wait Online
# Documentation=man:nm-online(1)
# Requires=NetworkManager.service
# After=NetworkManager.service
# Before=network-online.target
# 
# [Service]
# # `nm-online -s` waits until the point when NetworkManager logs
# # "startup complete". That is when startup actions are settled and
# # devices and profiles reached a conclusive activated or deactivated
# # state. It depends on which profiles are configured to autoconnect and
# # also depends on profile settings like ipv4.may-fail/ipv6.may-fail,
# # which affect when a profile is considered fully activated.
# # Check NetworkManager logs to find out why wait-online takes a certain
# # time.
# 
# Type=oneshot
# ExecStart=/usr/bin/nm-online -s -q
Änderungen an dieser Datei verwerfen (y,n,^C)? 
Datei /etc/systemd/system/NetworkManager-wait-online.service.d/.#override.conf04c95eeb5bb7934f nicht saved
Editing "/etc/systemd/system/NetworkManager-wait-online.service.d/override.conf" canceled: temporary file is empty.
und

Code: Alles auswählen

# systemctl edit chrony.service
# 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
Datei /etc/systemd/system/chrony.service.d/.#override.conf743b0fa07a9f44fc nicht geändert, daher keine Aktualisierung notwendig
Editing "/etc/systemd/system/chrony.service.d/override.conf" canceled: temporary file is empty.
Mir ist nicht klar, ob ich da einfach nur die von Dir genannte Zeile eintrage (immer noch die Frage, ob in der chrony.service oder der vom NM), oder ob ich das [Unit] auch noch eintragen muss.

Immerhin hat sich die Frage geklärt, wo das liegt, der Editor sagt mir, unter /etc/systemd/system/... ;)

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:06:21

Ahh. Danke, unsere postings haben sich überschnitten. Ich muss jetzt gleich los, eventuell schaffe ich das nicht und mache es später, gebe hier aber selbstverständlich Rückmeldung!

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 11:08:11

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:05:16
Immerhin hat sich die Frage geklärt, wo das liegt, der Editor sagt mir, unter /etc/systemd/system/... ;)
OK.
Wie ist jetzt die vollständige Ausgabe von:

Code: Alles auswählen

systemctl cat chrony
?
BTW: Ich mache das immer manuell (ohne edit), denn dann weiß ich was ich habe. ;-)

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:11:37

mat6937 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:08:11
BTW: Ich mache das immer manuell (ohne edit), denn dann weiß ich was ich habe. ;-)
Genau darum geht es mir auch!

systemctl cat chrony

Code: Alles auswählen

# Warning: chrony.service changed on disk, the version systemd has loaded is outdated.
# This output shows the current version of the unit's original fragment and drop-in files.
# If fragments or drop-ins were added or removed, they are not properly reflected in this output.
# Run 'systemctl daemon-reload' to reload units.
# /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
SystemCallFilter=~@cpu-emulation @debug @module @mount @obsolete @raw-io @reboot @swap

ConfigurationDirectory=chrony
RuntimeDirectory=chrony
RuntimeDirectoryMode=0700
# See dumpdir in chrony.conf(5)
RuntimeDirectoryPreserve=restart
StateDirectory=chrony
StateDirectoryMode=0750
LogsDirectory=chrony
LogsDirectoryMode=0750

# Adjust restrictions for /usr/sbin/sendmail (mailonchange directive)
NoNewPrivileges=no
ReadWritePaths=-/var/spool
RestrictAddressFamilies=AF_NETLINK

[Install]
Alias=chronyd.service
WantedBy=multi-user.target
Zuletzt geändert von dirk11 am 25.01.2024 11:23:41, insgesamt 1-mal geändert.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:15:57

Nach dem Edit:

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
SystemCallFilter=~@cpu-emulation @debug @module @mount @obsolete @raw-io @reboot @swap

ConfigurationDirectory=chrony
RuntimeDirectory=chrony
RuntimeDirectoryMode=0700
# See dumpdir in chrony.conf(5)
RuntimeDirectoryPreserve=restart
StateDirectory=chrony
StateDirectoryMode=0750
LogsDirectory=chrony
LogsDirectoryMode=0750

# Adjust restrictions for /usr/sbin/sendmail (mailonchange directive)
NoNewPrivileges=no
ReadWritePaths=-/var/spool
RestrictAddressFamilies=AF_NETLINK

[Install]
Alias=chronyd.service
WantedBy=multi-user.target

# /etc/systemd/system/chrony.service.d/addtarget.conf
[Unit]
After=network-online.target

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 11:16:10

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:11:37

Code: Alles auswählen

# Warning: chrony.service changed on disk, the version systemd has loaded is outdated.
# This output shows the current version of the unit's original fragment and drop-in files.
# If fragments or drop-ins were added or removed, they are not properly reflected in this output.
# Run 'systemctl daemon-reload' to reload units.
Jetzt musst Du noch:

Code: Alles auswählen

systemctl daemon-reload
und danach die Ausgabe von:

Code: Alles auswählen

systemctl cat chrony
anschauen/posten. Wenn der Inhalt OK, dann rebooten, ... denn das Problem ist ja in Zusammenhang mit dem booten.

EDIT:

OK. jetzt rebooten.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:21:44

Nee, das mit der Warning-Meldung war vor dem reboot, weil ich das mit sysctl edit angefangen, aber abgebrochen habe (in meinem Editor Strg-K-X). Das aktualisierte posting ist, nachdem ich das wie von Dir erklärt "händisch" mit dem neuen Verzeichnis und der neuen Datei unter /etc/systemd gemacht und rebootet habe. Da war übrigens auch chrony tracking dann erfolgreich, sprich es scheint zu funktionieren! Siehe auch die letzten drei Zeilen oben im zweiten Auszug.

Ich muss das zu Hause nochmal verifizieren, aber ich habe den Eindruck, das ist die Lösung! :THX:

"Verfahrenstechnisch" würde mich jetzt noch interessieren, was denn passiert, wenn ich den "Automatismus" systemctl edit benutze? Legt der auch so ein neues Unterverzeichnis und eine Datei addtarget.conf an?

Und noch ein edit:
Wenn ich das richtig sehe, könnte ich theoretisch auch die Datei /lib/systemd/system/chrony.service direkt bearbeiten, oder? Was es noch undurchsichtiger und eventuell Systemupgrades unmöglich machen würde, weil dann veränderte Dateien erkannt würden. Will ich also nicht machen, aber theoretisch ist meine Betrachtung doch korrekt, oder?
Zuletzt geändert von dirk11 am 25.01.2024 11:27:23, insgesamt 1-mal geändert.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 11:26:24

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:21:44
Nee, das mit der Warning-Meldung war vor dem reboot, ...
Nur zur Info: Ja, aber Du hättest auch schon vor dem reboot ein:

Code: Alles auswählen

systemctl daemon-reload
machen können und danach mit cat den Inhalt der unit anschauen können und dann hättest Du die Warnung nicht (mehr) gesehen.
Es war aber egal, weil Du eh einen reboot wegen der Wirkung (der Ergänzung) machen solltest/musstest und der reboot erledigt das mit dem:

Code: Alles auswählen

systemctl daemon-reload
gleich mit.

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von dirk11 » 25.01.2024 11:27:57

Ich habe gerade editiert, bitte beachten/beantworten!

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

Re: chronyd synct nicht bei Laptop-Start

Beitrag von mat6937 » 25.01.2024 11:31:35

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:21:44
"Verfahrenstechnisch" würde mich jetzt noch interessieren, was denn passiert, wenn ich den "Automatismus" systemctl edit benutze? Legt der auch so ein neues Unterverzeichnis und eine Datei addtarget.conf an?
Ja, aber der Name der Datei wird ein anderer sein.
dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:21:44
Und noch ein edit:
Wenn ich das richtig sehe, könnte ich theoretisch auch die Datei /lib/systemd/system/chrony.service direkt bearbeiten, oder? Was es noch undurchsichtiger und eventuell Systemupgrades unmöglich machen würde, weil dann veränderte Dateien erkannt würden. Will ich also nicht machen, aber theoretisch ist meine Betrachtung doch korrekt, oder?
Ja, aber nach einem update ist die direkte Änderung in der nativen service-unit (evtl.) weg und es ist weniger professionell das direkt zu machen, wie Du schon erkannt hast. ;-)

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: chronyd synct nicht bei Laptop-Start

Beitrag von JTH » 25.01.2024 11:37:47

dirk11 hat geschrieben: ↑ zum Beitrag ↑
25.01.2024 11:21:44
"Verfahrenstechnisch" würde mich jetzt noch interessieren, was denn passiert, wenn ich den "Automatismus" systemctl edit benutze? Legt der auch so ein neues Unterverzeichnis und eine Datei addtarget.conf an?
Wenn man systemctl edit benutzt, heißt die erzeugte Datei override.conf. Der Rest des Mechanismus ist derselbe, aber passiert halt automatisch. Ein wiederholtes systemctl edit für dieselbe Unit bearbeitet immer dieselbe override.conf-Datei.

Bei irgendeiner zukünfitgen systemd-Version kann man, meine ich, auch einen eigenen Dateinamen angeben.
Manchmal bekannt als Just (another) Terminal Hacker.

Antworten