chiark / gitweb /
tmpfiles, man: Add xattr support to tmpfiles
[elogind.git] / man / tmpfiles.d.xml
index 6b2753549c51759907218dbece78ac23a0518ebd..4f2e6406a882807da2166e02356af173d28dc76c 100644 (file)
                 filename in lexicographic order, regardless of which
                 of the directories they reside in. If multiple files
                 specify the same path, the entry in the file with the
-                lexicographically earliest name will be applied, all
-                all other conflicting entries will be logged as
+                lexicographically earliest name will be applied.
+                All other conflicting entries will be logged as
                 errors. When two lines are prefix and suffix of each
                 other, then the prefix is always processed first, the
-                suffix later. Otherwise the files/directories are
+                suffix later. Otherwise, the files/directories are
                 processed in the order they are listed.</para>
 
                 <para>If the administrator wants to disable a
@@ -175,7 +175,7 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         exist yet. If suffixed with
                                         <varname>+</varname> and a
                                         file already exists where the
-                                        pipe is to be created it will
+                                        pipe is to be created, it will
                                         be removed and be replaced by
                                         the pipe.</para></listitem>
                                 </varlistentry>
@@ -188,10 +188,14 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         yet. If suffixed with
                                         <varname>+</varname> and a
                                         file already exists where the
-                                        symlink is to be created it
+                                        symlink is to be created, it
                                         will be removed and be
                                         replaced by the
-                                        symlink.</para></listitem>
+                                        symlink. If the argument is omitted,
+                                        symlinks to files with the same name
+                                        residing in the directory
+                                        <filename>/usr/share/factory/</filename>
+                                        are created.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -203,10 +207,15 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         suffixed with
                                         <varname>+</varname> and a
                                         file already exists where the
-                                        device node is to be created
+                                        device node is to be created,
                                         it will be removed and be
                                         replaced by the device
-                                        node.</para></listitem>
+                                        node. It is recommended to suffix this
+                                        entry with an exclamation mark to only
+                                        create static device nodes at boot,
+                                        as udev will not manage static device
+                                        nodes that are created at runtime.
+                                        </para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -217,15 +226,33 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         exist yet. If suffixed with
                                         <varname>+</varname> and a
                                         file already exists where the
-                                        device node is to be created
+                                        device node is to be created,
                                         it will be removed and be
                                         replaced by the device
-                                        node.</para></listitem>
+                                        node. It is recommended to suffix this
+                                        entry with an exclamation mark to only
+                                        create static device nodes at boot,
+                                        as udev will not manage static device
+                                        nodes that are created at runtime.
+                                        </para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>C</varname></term>
-                                        <listitem><para>Recursively copy a file or directory, if the destination files or directories don't exist yet.</para></listitem>
+                                        <listitem><para>Recursively
+                                        copy a file or directory, if
+                                        the destination files or
+                                        directories do not exist
+                                        yet. Note that this command
+                                        will not descend into
+                                        subdirectories if the
+                                        destination directory already
+                                        exists. Instead, the entire
+                                        copy operation is
+                                        skipped. If the argument is omitted,
+                                        files from the source directory
+                                        <filename>/usr/share/factory/</filename>
+                                        with the same name are copied.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -316,6 +343,25 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
                                         normal path
                                         names.</para></listitem>
                                 </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>t</varname></term>
+                                        <listitem><para>Set extended
+                                        attributes on item. It may be
+                                        used in conjunction with other
+                                        types (only <varname>d</varname>,
+                                        <varname>D</varname>, <varname>f</varname>,
+                                        <varname>F</varname>, <varname>L</varname>,
+                                        <varname>p</varname>, <varname>c</varname>,
+                                        <varname>b</varname>, makes sense).
+                                        If used as a standalone line, then
+                                        <command>systemd-tmpfiles</command>
+                                        will try to set extended
+                                        attributes on specified path.
+                                        This can be especially used to set
+                                        SMACK labels.
+                                        </para></listitem>
+                                </varlistentry>
                         </variablelist>
 
                         <para>If the exclamation mark is used, this
@@ -403,20 +449,20 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         will not be modified. This parameter is
                         ignored for <varname>x</varname>,
                         <varname>r</varname>, <varname>R</varname>,
-                        <varname>L</varname> lines.</para>
+                        <varname>L</varname>, <varname>t</varname> lines.</para>
 
                         <para>Optionally, if prefixed with
-                        <literal>~</literal> the access mode is masked
+                        <literal>~</literal>, the access mode is masked
                         based on the already set access bits for
                         existing file or directories: if the existing
-                        file has all executable bits unset then all
+                        file has all executable bits unset, all
                         executable bits are removed from the new
-                        access mode, too. Similar, if all read bits
-                        are removed from the old access mode they will
+                        access mode, too. Similarly, if all read bits
+                        are removed from the old access mode, they will
                         be removed from the new access mode too, and
                         if all write bits are removed, they will be
                         removed from the new access mode too. In
-                        addition the sticky/suid/gid bit is removed unless
+                        addition, the sticky/SUID/SGID bit is removed unless
                         applied to a directory. This
                         functionality is particularly useful in
                         conjunction with <varname>Z</varname>.</para>
@@ -435,8 +481,8 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         ownership will not be modified. These
                         parameters are ignored for
                         <varname>x</varname>, <varname>r</varname>,
-                        <varname>R</varname>, <varname>L</varname>
-                        lines.</para>
+                        <varname>R</varname>, <varname>L</varname>,
+                        <varname>t</varname> lines.</para>
                 </refsect2>
 
                 <refsect2>
@@ -499,9 +545,9 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         and <varname>w</varname> may be used to
                         specify a short string that is written to the
                         file, suffixed by a newline. For
-                        <varname>C</varname> specifies the source file
-                        or directory. Ignored for all other
-                        lines.</para>
+                        <varname>C</varname>, specifies the source file
+                        or directory. For <varname>t</varname> determines
+                        extended attributes to be set. Ignored for all other lines.</para>
                 </refsect2>
 
         </refsect1>
@@ -513,7 +559,8 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         <para><command>screen</command> needs two directories created at boot with specific modes and ownership.</para>
 
                         <programlisting>d /run/screens  1777 root root 10d
-d /run/uscreens 0755 root root 10d12h</programlisting>
+d /run/uscreens 0755 root root 10d12h
+t /run/screen - - - - user.name="John Smith" security.SMACK64=screen</programlisting>
                 </example>
                 <example>
                         <title>/etc/tmpfiles.d/abrt.conf example</title>