<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->

<refentry id="systemd-timesyncd.service" conditional='ENABLE_TIMESYNCD'>

  <refentryinfo>
    <title>systemd-timesyncd.service</title>
    <productname>systemd</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>systemd-timesyncd.service</refentrytitle>
    <manvolnum>8</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>systemd-timesyncd.service</refname>
    <refname>systemd-timesyncd</refname>
    <refpurpose>Network Time Synchronization</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <para><filename>systemd-timesyncd.service</filename></para>
    <para><filename>/usr/lib/systemd/systemd-timesyncd</filename></para>
  </refsynopsisdiv>

  <refsect1>
    <title>Description</title>

    <para><filename>systemd-timesyncd</filename> is a system service that may be used to synchronize the
    local system clock with a remote Network Time Protocol (NTP) server. It also saves the local time to disk
    every time the clock has been synchronized and uses this to possibly advance the system realtime clock on
    subsequent reboots to ensure it (roughly) monotonically advances even if the system lacks a
    battery-buffered RTC chip.</para>

    <para>The <filename>systemd-timesyncd</filename> service implements SNTP only. This minimalistic service
    will step the system clock for large offsets or slowly adjust it for smaller deltas. Complex use cases
    that require full NTP support (and where SNTP is not sufficient) are not covered by
    <filename>systemd-timesyncd</filename>.</para>

    <para>The NTP servers contacted are determined from the global settings in
    <citerefentry><refentrytitle>timesyncd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, the
    per-link static settings in <filename>.network</filename> files, and the per-link dynamic settings
    received over DHCP. See
    <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
    further details.</para>

    <para><citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
    <command>set-ntp</command> command may be used to enable and start, or disable and stop this
    service.</para>

    <para><citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
    <command>timesync-status</command> or <command>show-timesync</command> command can be used to show the
    current status of this service.</para>

    <para><filename>systemd-timesyncd</filename> initialization delays the start of units that are ordered
    after <filename>time-set.target</filename> (see
    <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry> for
    details) until the local time has been updated from <filename>/var/lib/systemd/timesync/clock</filename>
    (see below) in order to make it roughly monotonic. It does not delay other units until synchronization
    with an accurate reference time sources has been reached. Use
    <citerefentry><refentrytitle>systemd-time-wait-sync.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
    to achieve that, which will delay start of units that are ordered after
    <filename>time-sync.target</filename> until synchronization to an accurate reference clock is
    reached.</para>
  </refsect1>

  <refsect1>
    <title>Files</title>

    <variablelist>
      <varlistentry>
        <term><filename>/var/lib/systemd/timesync/clock</filename></term>

        <listitem>
          <para>The modification time ("mtime") of this file indicates the timestamp of the last successful
          synchronization (or at least the systemd build date, in case synchronization was not possible). It
          is used to ensure that the system clock remains roughly monotonic across reboots, in case no local
          RTC is available.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><filename>/run/systemd/timesync/synchronized</filename></term>

        <listitem>
          <para>A file that is touched on each successful synchronization, to assist
          <filename>systemd-time-wait-sync</filename> and other applications to detecting synchronization
          with accurate reference clocks.</para>
        </listitem>

      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>See Also</title>
    <para>
      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>timesyncd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-time-wait-sync.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
      <citerefentry project='man-pages'><refentrytitle>hwclock</refentrytitle><manvolnum>8</manvolnum></citerefentry>
    </para>
  </refsect1>

</refentry>
