chiark / gitweb /
net-util: add support for Type=ethernet
[elogind.git] / man / systemd.timer.xml
index e08e20021252a7f1bb0e04fb6a9bba9841ab1dcb..bb3a6d138650d18e262a716ed284c7bb8db17802 100644 (file)
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>systemd.timer</filename></para>
+                <para><filename><replaceable>timer</replaceable>.timer</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
                 <para>A unit configuration file whose name ends in
-                <filename>.timer</filename> encodes information about
+                <literal>.timer</literal> encodes information about
                 a timer controlled and supervised by systemd, for
                 timer-based activation.</para>
 
@@ -97,7 +97,7 @@
                 defines. The options specific to the [Timer] section
                 of timer units are the following:</para>
 
-                <variablelist>
+                <variablelist class='unit-directives'>
                         <varlistentry>
                                 <term><varname>OnActiveSec=</varname></term>
                                 <term><varname>OnBootSec=</varname></term>
                                 machine was booted
                                 up. <varname>OnStartupSec=</varname>
                                 defines a timer relative to when
-                                systemd was
+                                systemd was first
                                 started. <varname>OnUnitActiveSec=</varname>
                                 defines a timer relative to when the
                                 unit the timer is activating was last
                                 combined of the same and of different
                                 types. For example, by combining
                                 <varname>OnBootSec=</varname> and
-                                <varname>OnUnitActiveSec=</varname> it is
+                                <varname>OnUnitActiveSec=</varname>, it is
                                 possible to define a timer that
                                 elapses in regular intervals and
                                 activates a specific service each
                                 also include time units. Example:
                                 "OnBootSec=5h 30min" means 5 hours and
                                 30 minutes after boot-up. For details
-                                about the syntax of time spans see
+                                about the syntax of time spans, see
                                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                                 <para>If a timer configured with
                                 <para>These are monotonic timers,
                                 independent of wall-clock time and timezones. If the
                                 computer is temporarily suspended, the
-                                monotonic clock stops too.</para></listitem>
+                                monotonic clock stops too.</para>
+
+                                <para>If the empty string is assigned
+                                to any of these options, the list of
+                                timers is reset, and all prior
+                                assignments will have no
+                                effect.</para>
+
+                                <para>Note that timers do not
+                                necessarily expire at the precise
+                                time configured with these settings,
+                                as they are subject to the
+                                <varname>AccuracySec=</varname>
+                                setting below.</para></listitem>
 
                         </varlistentry>
 
                                 <term><varname>OnCalendar=</varname></term>
 
                                 <listitem><para>Defines realtime
-                                (i.e. wallclock) timers via calendar
+                                (i.e. wallclock) timers with calendar
                                 event expressions. See
                                 <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                                 for more information on the syntax of
-                                calendar event
-                                expressions.</para></listitem>
+                                calendar event expressions. Otherwise,
+                                the semantics are similar to
+                                <varname>OnActiveSec=</varname> and
+                                related settings.</para>
+
+                                <para>Note that timers do not
+                                necessarily expire at the precise
+                                time configured with this setting,
+                                as it is subject to the
+                                <varname>AccuracySec=</varname>
+                                setting below.</para></listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>AccuracySec=</varname></term>
+
+                                <listitem><para>Specify the accuracy
+                                the timer shall elapse with. Defaults
+                                to 1min. The timer is scheduled to
+                                elapse within a time window starting
+                                with the time specified in
+                                <varname>OnCalendar=</varname>,
+                                <varname>OnActiveSec=</varname>,
+                                <varname>OnBootSec=</varname>,
+                                <varname>OnStartupSec=</varname>,
+                                <varname>OnUnitActiveSec=</varname> or
+                                <varname>OnUnitInactiveSec=</varname>
+                                and ending the time configured with
+                                <varname>AccuracySec=</varname>
+                                later. Within this time window, the
+                                expiry time will be placed at a
+                                host-specific, randomized but stable
+                                position, that is synchronized between
+                                all local timer units. This is done in
+                                order to distribute the wake-up time
+                                in networked installations, as well as
+                                optimizing power consumption to
+                                suppress unnecessary CPU wake-ups. To
+                                get best accuracy, set this option to
+                                1us. Note that the timer is still
+                                subject to the timer slack configured
+                                via
+                                <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>'s
+                                <varname>TimerSlackNSec=</varname>
+                                setting. See
+                                <citerefentry><refentrytitle>prctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
+                                for details. To optimize power
+                                consumption, make sure to set this
+                                value as high as possible and as low
+                                as necessary.</para></listitem>
+                        </varlistentry>
                         <varlistentry>
                                 <term><varname>Unit=</varname></term>
 
                                 <listitem><para>The unit to activate
                                 when this timer elapses. The argument is a
                                 unit name, whose suffix is not
-                                <filename>.timer</filename>. If not
+                                <literal>.timer</literal>. If not
                                 specified, this value defaults to a
                                 service that has the same name as the
                                 timer unit, except for the
                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
+                          <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>prctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
                   </para>
         </refsect1>