chiark / gitweb /
man: fix description of file order application
[elogind.git] / man / tmpfiles.d.xml
index 75d4bcd695796e6f2e13b03d4721a4c161737581..2872cc0add463e4d484e40a4c4e355bff68eda21 100644 (file)
                 configuration files installed by vendor packages. All
                 configuration files are sorted by their filename in
                 alphabetical order, regardless in which of the
-                directories they reside, to guarantee that a specific
-                configuration file takes precedence over another file
-                with an alphabetically later name</para>
+                directories they reside. If multiple files specify the
+                same path, the entry in the file with the alphabetically
+                earliest name will be applied, all all other conflicting
+                entries logged as errors.</para>
 
                 <para>If the administrator wants to disable a
                 configuration file supplied by the vendor the
                 recommended way is to place a symlink to
                 <filename>/dev/null</filename> in
                 <filename>/etc/tmpfiles.d/</filename> bearing the
-                same file name.</para>
+                same filename.</para>
 
                 <para>The configuration format is one line per path
                 containing action, path, mode, ownership, age and argument
@@ -104,7 +105,7 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                         <variablelist>
                                 <varlistentry>
                                         <term><varname>f</varname></term>
-                                        <listitem><para>Create a file if it doesn't exist yet (optionally writing a short string into it, if the argument parameter is passed)</para></listitem>
+                                        <listitem><para>Create a file if it does not exist yet (optionally writing a short string into it, if the argument parameter is passed)</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -114,12 +115,15 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
 
                                 <varlistentry>
                                         <term><varname>w</varname></term>
-                                        <listitem><para>Write the argument parameter to a file, if it exists.</para></listitem>
+                                        <listitem><para>Write the argument parameter to a file, if the file exists.
+                                            Lines of this type accept shell-style globs in place of normal path
+                                            names. The argument parameter will be written without a trailing
+                                            newline. C-style backslash escapes are interpreted.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>d</varname></term>
-                                        <listitem><para>Create a directory if it doesn't exist yet</para></listitem>
+                                        <listitem><para>Create a directory if it does not exist yet</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -129,22 +133,22 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
 
                                 <varlistentry>
                                         <term><varname>p</varname></term>
-                                        <listitem><para>Create a named pipe (FIFO) if it doesn't exist yet</para></listitem>
+                                        <listitem><para>Create a named pipe (FIFO) if it does not exist yet</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>L</varname></term>
-                                        <listitem><para>Create a symlink if it doesn't exist yet</para></listitem>
+                                        <listitem><para>Create a symlink if it does not exist yet</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>c</varname></term>
-                                        <listitem><para>Create a character device node if it doesn't exist yet</para></listitem>
+                                        <listitem><para>Create a character device node if it does not exist yet</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>b</varname></term>
-                                        <listitem><para>Create a block device node if it doesn't exist yet</para></listitem>
+                                        <listitem><para>Create a block device node if it does not exist yet</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -158,7 +162,22 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         effect of r or R lines. Lines
                                         of this type accept
                                         shell-style globs in place of
-                                        of normal path
+                                        normal path
+                                        names.</para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>X</varname></term>
+                                        <listitem><para>Ignore a path
+                                        during cleanup. Use this type
+                                        to prevent path removal as
+                                        controlled with the Age parameter.
+                                        Note that if path is a directory,
+                                        content of a directory is not
+                                        excluded from clean-up, only
+                                        directory itself. Lines of this
+                                        type accept shell-style globs
+                                        in place of normal path
                                         names.</para></listitem>
                                 </varlistentry>
 
@@ -262,11 +281,22 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                         </variablelist>
 
                         <para>If multiple integers and units are specified the time
-                        values are summed up.</para>
+                        values are summed up. If an integer is given without a unit,
+                        s is assumed.
+                        </para>
+
+                        <para>When the age is set to zero, the files are cleaned
+                        unconditionally.</para>
 
                         <para>The age field only applies to lines starting with
                         d, D and x. If omitted or set to - no automatic clean-up
                         is done.</para>
+
+                        <para>If the age field starts with a tilde
+                        character (~) the clean-up is only applied to
+                        files and directories one level inside the
+                        directory specified, but not the files and
+                        directories immediately inside it.</para>
                 </refsect2>
 
                 <refsect2>
@@ -293,13 +323,21 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                         <programlisting>d /var/run/screens  1777 root root 10d
 d /var/run/uscreens 0755 root root 10d12h</programlisting>
                 </example>
+                <example>
+                        <title>/etc/tmpfiles.d/abrt.conf example</title>
+                        <para><command>abrt</command> needs a directory created at boot with specific mode and ownership and its content should be preserved.</para>
+
+                        <programlisting>d /var/tmp/abrt 0755 abrt abrt
+x /var/tmp/abrt/*</programlisting>
+                </example>
         </refsect1>
 
         <refsect1>
                 <title>See Also</title>
                 <para>
                         <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                        <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>
                 </para>
         </refsect1>