chiark / gitweb /
service: add StartLimitInterval/StartLimitBurst/StartLimitAction
[elogind.git] / man / tmpfiles.d.xml
index 868b57e93517feab6b74c6d2f6ea8629a24f2269..25a7c9ba48351d96b84388c65de4a16a6eca5449 100644 (file)
         </refnamediv>
 
         <refsynopsisdiv>
         </refnamediv>
 
         <refsynopsisdiv>
+                <para><filename>/usr/lib/tmpfiles.d/*.conf</filename></para>
                 <para><filename>/etc/tmpfiles.d/*.conf</filename></para>
                 <para><filename>/etc/tmpfiles.d/*.conf</filename></para>
+                <para><filename>/run/tmpfiles.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
                <para><command>systemd-tmpfiles</command> uses the
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
                <para><command>systemd-tmpfiles</command> uses the
-               configuration files in
-               <filename>/etc/tmpfiles.d/</filename> to describe the
+               configuration files from the above directories to describe the
                creation, cleaning and removal of volatile and
                temporary files and directories which usually reside
                creation, cleaning and removal of volatile and
                temporary files and directories which usually reside
-               in directories such as <filename>/var/run</filename>
-               or <filename>/tmp</filename>. Each configuration file
-               is named in the style of
-               <filename>/etc/tmpfiles.d/&lt;program&gt;.conf</filename>.</para>
+               in directories such as <filename>/run</filename>
+               or <filename>/tmp</filename>.</para>
         </refsect1>
 
         <refsect1>
                <title>Configuration Format</title>
 
         </refsect1>
 
         <refsect1>
                <title>Configuration Format</title>
 
+                <para>Each configuration file is named in the style of
+                <filename>&lt;program&gt;.conf</filename>.  Files in
+                <filename>/etc/</filename> override files with the
+                same name in <filename>/usr/lib/</filename>.  Files in
+                <filename>/run</filename> override files with the same
+                name in <filename>/etc/</filename> and
+                <filename>/usr/lib/</filename>. Packages should
+                install their configuration files in
+                <filename>/usr/lib/</filename>, files in
+                <filename>/etc/</filename> are reserved for the local
+                administrator, who may choose to override the
+                configurations installed from packages. The list of
+                configuration files are sorted by their filename in
+                alphabetical order, regardless in which of the
+                directories they reside, to guarantee that a
+                configuration file takes precedence over another
+                configuration file with an alphabetically later
+                name.</para>
+
                <para>The configuration format is one line per path
                <para>The configuration format is one line per path
-               containing action, mode, ownership and age
+               containing action, path, mode, ownership, age and argument
                fields:</para>
 
                fields:</para>
 
-                <programlisting>Type Path          Mode UID  GID  Age
-d    /var/run/user 0755 root root 10d</programlisting>
+                <programlisting>Type Path        Mode UID  GID  Age Argument
+d    /run/user   0755 root root 10d -
+L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
 
                 <refsect2>
                         <title>Type</title>
                         <variablelist>
                                 <varlistentry>
                                         <term><varname>f</varname></term>
 
                 <refsect2>
                         <title>Type</title>
                         <variablelist>
                                 <varlistentry>
                                         <term><varname>f</varname></term>
-                                        <listitem><para>Create a file if it doesn't exist yet</para></listitem>
+                                        <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>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>F</varname></term>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>F</varname></term>
-                                        <listitem><para>Create or truncate a file</para></listitem>
+                                        <listitem><para>Create or truncate a file (optionally writing a short string into it, if the argument parameter is passed)</para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>w</varname></term>
+                                        <listitem><para>Write the argument parameter to a file, if it exists.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -97,6 +121,26 @@ d    /var/run/user 0755 root root 10d</programlisting>
                                         <listitem><para>Create or empty a directory</para></listitem>
                                 </varlistentry>
 
                                         <listitem><para>Create or empty a directory</para></listitem>
                                 </varlistentry>
 
+                                <varlistentry>
+                                        <term><varname>p</varname></term>
+                                        <listitem><para>Create a named pipe (FIFO) if it doesn't exist yet</para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>L</varname></term>
+                                        <listitem><para>Create a symlink if it doesn't 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>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>b</varname></term>
+                                        <listitem><para>Create a block device node if it doesn't exist yet</para></listitem>
+                                </varlistentry>
+
                                 <varlistentry>
                                         <term><varname>x</varname></term>
                                         <listitem><para>Ignore a path
                                 <varlistentry>
                                         <term><varname>x</varname></term>
                                         <listitem><para>Ignore a path
@@ -135,6 +179,27 @@ d    /var/run/user 0755 root root 10d</programlisting>
                                         place of normal path
                                         names.</para></listitem>
                                 </varlistentry>
                                         place of normal path
                                         names.</para></listitem>
                                 </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>z</varname></term>
+                                        <listitem><para>Set ownership, access
+                                        mode and relabel security context of
+                                        a file or directory if it exists.
+                                        Lines of this type accept shell-style
+                                        globs in place of normal path names.
+                                        </para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>Z</varname></term>
+                                        <listitem><para>Recursively set
+                                        ownership, access mode and relabel
+                                        security context of a path and
+                                        all its subdirectories (if it is a
+                                        directory). Lines of this type accept
+                                        shell-style globs in place of normal
+                                        path names.</para></listitem>
+                                </varlistentry>
                         </variablelist>
                 </refsect2>
 
                         </variablelist>
                 </refsect2>
 
@@ -144,8 +209,11 @@ d    /var/run/user 0755 root root 10d</programlisting>
                         <para>The file access mode to use when
                         creating this file or directory. If omitted or
                         when set to - the default is used: 0755 for
                         <para>The file access mode to use when
                         creating this file or directory. If omitted or
                         when set to - the default is used: 0755 for
-                        directories, 0644 for files. This parameter is
-                        ignored for x, r, R lines.</para>
+                        directories, 0644 for all other file
+                        objects. For z, Z lines if omitted or when set
+                        to - the file access mode will not be
+                        modified. This parameter is ignored for x, r,
+                        R, L lines.</para>
                 </refsect2>
 
                 <refsect2>
                 </refsect2>
 
                 <refsect2>
@@ -155,8 +223,9 @@ d    /var/run/user 0755 root root 10d</programlisting>
                         or directory. This may either be a numeric
                         user/group ID or a user or group name. If
                         omitted or when set to - the default 0 (root)
                         or directory. This may either be a numeric
                         user/group ID or a user or group name. If
                         omitted or when set to - the default 0 (root)
-                        is used. . These parameters are ignored for x,
-                        r, R lines.</para>
+                        is used. For z, Z lines when omitted or when set to -
+                        the file ownership will not be modified.
+                        These parameters are ignored for x, r, R, L lines.</para>
                 </refsect2>
 
                 <refsect2>
                 </refsect2>
 
                 <refsect2>
@@ -181,10 +250,25 @@ d    /var/run/user 0755 root root 10d</programlisting>
                                 <term><varname>us</varname></term></varlistentry>
                         </variablelist>
 
                                 <term><varname>us</varname></term></varlistentry>
                         </variablelist>
 
-                        <para>If multiple integers and units are specified the time values are summed up.</para>
+                        <para>If multiple integers and units are specified the time
+                        values are summed up.</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>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>
+                </refsect2>
 
 
+                <refsect2>
+                        <title>Argument</title>
+
+                        <para>For L lines determines the destination
+                        path of the symlink. For c, b determines the
+                        major/minor of the device node, with major and
+                        minor formatted as integers, separated by :,
+                        e.g. "1:3". For f, F, w may be used to specify
+                        a short string that is written to the file,
+                        suffixed by a newline. Ignored for all other
+                        lines.</para>
                 </refsect2>
 
         </refsect1>
                 </refsect2>
 
         </refsect1>
@@ -195,7 +279,7 @@ d    /var/run/user 0755 root root 10d</programlisting>
                         <title>/etc/tmpfiles.d/screen.conf example</title>
                         <para><command>screen</command> needs two directories created at boot with specific modes and ownership.</para>
 
                         <title>/etc/tmpfiles.d/screen.conf example</title>
                         <para><command>screen</command> needs two directories created at boot with specific modes and ownership.</para>
 
-                        <programlisting>d /var/run/screens 1777 root root 10d
+                        <programlisting>d /var/run/screens  1777 root root 10d
 d /var/run/uscreens 0755 root root 10d12h</programlisting>
                 </example>
         </refsect1>
 d /var/run/uscreens 0755 root root 10d12h</programlisting>
                 </example>
         </refsect1>