SYSTEMD-TI...D.SERVICE(8)

โœจ NAME โœจ

systemd-timedated.service, systemd-timedated โ€” the time and date bus mechanism, bestie ๐Ÿ’–


๐ŸŒธ SYNOPSIS ๐ŸŒธ

systemd-timedated.service
/usr/lib/systemd/systemd-timedated

๐ŸŽ€ DESCRIPTION ๐ŸŽ€

Okay so systemd-timedated.service is a system service, right? And it's literally the mechanism for changing the system clock and the timezone, plus enabling or disabling network time synchronization. That's its whole thing. ๐Ÿ’…

And the way it works is so iconic: systemd-timedated gets automatically activated on request, and then it terminates itself when nobody's using it anymore. Self-care queen behavior honestly. ๐Ÿฆ‹

The tool timedatectl(1) is a command line client to this service โ€” it's how you actually talk to it.

Right now systemd-timedated offers access to these four settings, no more no less:

  • The system time โฐ
  • The system timezone ๐ŸŒ
  • A boolean controlling whether the system RTC is in local or UTC timezone
  • Whether the time synchronization service is enabled/started or disabled/stopped โ€” see the next section for that one ๐Ÿ‘€

If you wanna know about the D-Bus API, go look at org.freedesktop.timedate1(5) and org.freedesktop.LogControl1(5). That's where the lore is. ๐Ÿ“š


๐Ÿ”ฅ LIST OF NETWORK TIME SYNCHRONIZATION SERVICES ๐Ÿ”ฅ

So here's how systemd-timedated finds its NTP services. It goes looking for files with a .list extension in ntp-units.d/ directories. Each file gets parsed as a list of unit names, one per line. Empty lines and lines with comments ("#") are ignored โ€” like, they just don't count. ๐Ÿ™ˆ

Files get read from /usr/lib/systemd/ntp-units.d/ and the corresponding directories under /etc/, /run/, /usr/local/lib/.

The override hierarchy is giving priority drama, so listen up:

  • Files in /etc/ override files with the same name in /run/, /usr/local/lib/, and /usr/lib/.
  • Files in /run/ override files with the same name under /usr/.

And packages should install their configuration files in /usr/lib/ (that's for distribution packages) or /usr/local/lib/ (that's for local installs). Periodt. ๐Ÿ’…

โญ Example 1. ntp-units.d/ entry for systemd-timesyncd

# /usr/lib/systemd/ntp-units.d/80-systemd-timesync.list
systemd-timesyncd.service

Now, if the environment variable $SYSTEMD_TIMEDATED_NTP_SERVICES is set, systemd-timedated will parse the contents of that variable as a colon-separated list of unit names. And when it's set, this variable overrides the file-based list described above. It said what it said. ๐Ÿ‘‘

โญ Example 2. An override that specifies that chronyd should be used if available

SYSTEMD_TIMEDATED_NTP_SERVICES=chronyd.service:systemd-timesyncd.service

๐ŸŒˆ SEE ALSO ๐ŸŒˆ

systemd(1), timedatectl(1), localtime(5), hwclock(8), systemd-timesyncd(8), org.freedesktop.timedate1(5)


That's the whole page bestie, no cap โ€” brought to you by systemd 262.1 โœจ thanks for reading my little SYSTEMD-TI...D.SERVICE(8) essay, mwah ๐Ÿซถ๐Ÿ’–

๐Ÿ“ฆ where this page comes from
  • arch rolling: systemd 262.1-1 ยท LGPL-2.1-or-later AND CC0-1.0 AND GPL-2.0-or-later AND MIT-0
  • ๐Ÿ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms