chiark / gitweb /
systemctl: --kill-mode is long long gone, don't mention it in the man page
[elogind.git] / man / systemd.timer.xml
index 0b204353f410643b050a11adb4c525ea2520ccc1..58eaab09f84625cbb20d109067a5b5aa625bcb5b 100644 (file)
 
         <refnamediv>
                 <refname>systemd.timer</refname>
 
         <refnamediv>
                 <refname>systemd.timer</refname>
-                <refpurpose>systemd timer configuration files</refpurpose>
+                <refpurpose>Timer unit configuration</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
         </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
         </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>
 
                 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>
 
                 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>
                         <varlistentry>
                                 <term><varname>OnActiveSec=</varname></term>
                                 <term><varname>OnBootSec=</varname></term>
                                 <term><varname>OnUnitActiveSec=</varname></term>
                                 <term><varname>OnUnitInactiveSec=</varname></term>
 
                                 <term><varname>OnUnitActiveSec=</varname></term>
                                 <term><varname>OnUnitInactiveSec=</varname></term>
 
-                                <listitem><para>Defines timers
+                                <listitem><para>Defines monotonic timers
                                 relative to different starting points:
                                 <varname>OnActiveSec=</varname> defines a
                                 timer relative to the moment the timer
                                 relative to different starting points:
                                 <varname>OnActiveSec=</varname> defines a
                                 timer relative to the moment the timer
                                 machine was booted
                                 up. <varname>OnStartupSec=</varname>
                                 defines a timer relative to when
                                 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
                                 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
                                 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
                                 possible to define a timer that
                                 elapses in regular intervals and
                                 activates a specific service each
                                 seconds. Example: "OnBootSec=50" means
                                 50s after boot-up. The argument may
                                 also include time units. Example:
                                 seconds. Example: "OnBootSec=50" means
                                 50s after boot-up. The argument may
                                 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
+                                "OnBootSec=5h 30min" means 5 hours and
+                                30 minutes after boot-up. For details
+                                about the syntax of time spans, see
                                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                                 <para>If a timer configured with
                                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                                 <para>If a timer configured with
                                 elapse and the configured unit is
                                 started. This is not the case for
                                 timers defined in the other
                                 elapse and the configured unit is
                                 started. This is not the case for
                                 timers defined in the other
-                                directives.</para></listitem>
+                                directives.</para>
 
                                 <para>These are monotonic timers,
                                 independent of wall-clock time and timezones. If the
                                 computer is temporarily suspended, the
                                 monotonic clock stops too.</para>
 
 
                                 <para>These are monotonic timers,
                                 independent of wall-clock time and timezones. If the
                                 computer is temporarily suspended, the
                                 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>
+
+                        <varlistentry>
+                                <term><varname>OnCalendar=</varname></term>
+
+                                <listitem><para>Defines realtime
+                                (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. 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>
                         </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
                                 <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
                                 specified, this value defaults to a
                                 service that has the same name as the
                                 timer unit, except for the
                                 are named identically, except for the
                                 suffix.</para></listitem>
                         </varlistentry>
                                 are named identically, except for the
                                 suffix.</para></listitem>
                         </varlistentry>
+
+
+                        <varlistentry>
+                                <term><varname>Persistent=</varname></term>
+
+                                <listitem><para>Takes a boolean
+                                argument. If true the service unit is
+                                immediately triggered when the timer
+                                unit is activated and the timer
+                                elapsed at least once since the last
+                                time the service unit has been
+                                triggered by the timer unit. The time
+                                when the service unit was last
+                                triggered is stored on disk. This is
+                                useful to catch up for missed timers
+                                when a machine is shutdown temporarily
+                                and then is powered up again. Note
+                                that this setting only has an effect
+                                on timers configured with
+                                <varname>OnCalendar=</varname>.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>WakeSystem=</varname></term>
+
+                                <listitem><para>Takes a boolean
+                                argument. If true an elapsing timer
+                                will cause the system to resume from
+                                suspend, should it be suspended and if
+                                the system supports this. Note that
+                                this option will only make sure the
+                                system resumes on the appropriate
+                                times, it will not take care of
+                                suspending it again after any work
+                                that is to be done is
+                                finished. Defaults to
+                                <varname>false</varname>.</para></listitem>
+                        </varlistentry>
                 </variablelist>
         </refsect1>
 
                 </variablelist>
         </refsect1>
 
                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>systemd.service</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-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>prctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
                   </para>
         </refsect1>
 
                   </para>
         </refsect1>