chiark / gitweb /
core: reuse the same /tmp, /var/tmp and inaccessible dir
[elogind.git] / man / systemd.exec.xml
index 8a22ac013857da530f7ef35cb16c6de1ecfe3831..b1cd685cc0ba39be5920ba2e5a0e53e1ea7b573a 100644 (file)
         </refnamediv>
 
         <refsynopsisdiv>
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>systemd.service</filename>,
-                <filename>systemd.socket</filename>,
-                <filename>systemd.mount</filename>,
-                <filename>systemd.swap</filename></para>
+                <para><filename><replaceable>service</replaceable>.service</filename>,
+                <filename><replaceable>socket</replaceable>.socket</filename>,
+                <filename><replaceable>mount</replaceable>.mount</filename>,
+                <filename><replaceable>swap</replaceable>.swap</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
         </refsynopsisdiv>
 
         <refsect1>
@@ -82,7 +82,7 @@
         <refsect1>
                 <title>Options</title>
 
         <refsect1>
                 <title>Options</title>
 
-                <variablelist>
+                <variablelist class='unit-directives'>
 
                         <varlistentry>
                                 <term><varname>WorkingDirectory=</varname></term>
 
                         <varlistentry>
                                 <term><varname>WorkingDirectory=</varname></term>
                                 empty string is assigned to this
                                 option the list of environment
                                 variables is reset, all prior
                                 empty string is assigned to this
                                 option the list of environment
                                 variables is reset, all prior
-                                assignments have no effect. See
+                                assignments have no effect.
+                                Variable expansion is not performed
+                                inside the strings, and $ has no special
+                                meaning.
+                                If you need to assign a value containing spaces
+                                to a variable, use double quotes (")
+                                for the assignment.</para>
+
+                                <para>Example:
+                                <programlisting>Environment="VAR1=word1 word2" VAR2=word3 "VAR3=word 5 6"</programlisting>
+                                gives three variables <literal>VAR1</literal>,
+                                <literal>VAR2</literal>, <literal>VAR3</literal>.
+                                </para>
+
+                                <para>
+                                See
                                 <citerefentry><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                                 <citerefentry><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>
-                                for details.</para></listitem>
+                                for details about environment variables.</para></listitem>
                         </varlistentry>
                         <varlistentry>
                                 <term><varname>EnvironmentFile=</varname></term>
                         </varlistentry>
                         <varlistentry>
                                 <term><varname>EnvironmentFile=</varname></term>
                                 with
                                 <option>DefaultStandardOutput=</option>
                                 in
                                 with
                                 <option>DefaultStandardOutput=</option>
                                 in
-                                <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                                <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                                 which defaults to
                                 <option>journal</option>.</para></listitem>
                         </varlistentry>
                                 which defaults to
                                 <option>journal</option>.</para></listitem>
                         </varlistentry>
                                 setting defaults to the value set with
                                 <option>DefaultStandardError=</option>
                                 in
                                 setting defaults to the value set with
                                 <option>DefaultStandardError=</option>
                                 in
-                                <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                                <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                                 which defaults to
                                 <option>inherit</option>.</para></listitem>
                         </varlistentry>
                                 which defaults to
                                 <option>inherit</option>.</para></listitem>
                         </varlistentry>
                                 settings of
                                 <varname>DefaultControllers=</varname>
                                 of
                                 settings of
                                 <varname>DefaultControllers=</varname>
                                 of
-                                <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                                <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                                 but a unit's
                                 <varname>ControlGroup=</varname>
                                 setting for a specific controller
                                 but a unit's
                                 <varname>ControlGroup=</varname>
                                 setting for a specific controller
                                 <listitem><para>Takes a boolean
                                 argument. If true sets up a new file
                                 system namespace for the executed
                                 <listitem><para>Takes a boolean
                                 argument. If true sets up a new file
                                 system namespace for the executed
-                                processes and mounts a private
-                                <filename>/tmp</filename> directory
-                                inside it, that is not shared by
+                                processes and mounts private
+                                <filename>/tmp</filename> and
+                                <filename>/var/tmp</filename> directories
+                                inside it, that are not shared by
                                 processes outside of the
                                 namespace. This is useful to secure
                                 access to temporary files of the
                                 process, but makes sharing between
                                 processes via
                                 processes outside of the
                                 namespace. This is useful to secure
                                 access to temporary files of the
                                 process, but makes sharing between
                                 processes via
-                                <filename>/tmp</filename>
-                                impossible. Defaults to
+                                <filename>/tmp</filename> or
+                                <filename>/var/tmp</filename>
+                                impossible. All temporary data created
+                                by service will be removed after service
+                                is stopped. Defaults to
                                 false.</para></listitem>
                         </varlistentry>
 
                                 false.</para></listitem>
                         </varlistentry>