chiark / gitweb /
man: there's actually no "fail" fstab option, but only "nofail"
[elogind.git] / man / systemd.mount.xml
index 45173b55fd89d0228cce10ec6a8ec795195d3f08..8527386594fb6e036a2189d57b8563b0fb2cab64 100644 (file)
@@ -9,16 +9,16 @@
   Copyright 2010 Lennart Poettering
 
   systemd is free software; you can redistribute it and/or modify it
   Copyright 2010 Lennart Poettering
 
   systemd is free software; you can redistribute it and/or modify it
-  under the terms of the GNU General Public License as published by
-  the Free Software Foundation; either version 2 of the License, or
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
   (at your option) any later version.
 
   systemd is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
   (at your option) any later version.
 
   systemd is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-  General Public License for more details.
+  Lesser General Public License for more details.
 
 
-  You should have received a copy of the GNU General Public License
+  You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
 
         <refnamediv>
                 <refname>systemd.mount</refname>
 
         <refnamediv>
                 <refname>systemd.mount</refname>
-                <refpurpose>systemd mount configuration files</refpurpose>
+                <refpurpose>Mount unit configuration</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>systemd.mount</filename></para>
+                <para><filename><replaceable>mount</replaceable>.mount</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>.mount</filename> encodes information about
+                <literal>.mount</literal> encodes information about
                 a file system mount point controlled and supervised by
                 systemd.</para>
 
                 a file system mount point controlled and supervised by
                 systemd.</para>
 
                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                 which define the execution environment the
                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                 which define the execution environment the
                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
-                binary is executed in.</para>
+                binary is executed in, and in
+                <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                which define the way the processes are terminated, and
+                in
+                <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                which configure resource control settings for the
+                processes of the service. Note that the User= and
+                Group= options are not particularly useful for mount
+                units specifying a <literal>Type=</literal> option or
+                using configuration not specified in
+                <filename>/etc/fstab</filename>;
+                <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                will refuse options that are not listed in
+                <filename>/etc/fstab</filename> if it is not run as
+                UID 0.</para>
 
                 <para>Mount units must be named after the mount point
                 directories they control. Example: the mount point
 
                 <para>Mount units must be named after the mount point
                 directories they control. Example: the mount point
-                <filename>/home/lennart</filename> must be configured
+                <filename noindex='true'>/home/lennart</filename> must be configured
                 in a unit file
                 <filename>home-lennart.mount</filename>. For details
                 about the escaping logic used to convert a file system
                 in a unit file
                 <filename>home-lennart.mount</filename>. For details
                 about the escaping logic used to convert a file system
-                path to a unit name see
+                path to a unit name, see
                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                 <para>Optionally, a mount unit may be accompanied by
                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                 <para>Optionally, a mount unit may be accompanied by
                 mounting. See
                 <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
                 mounting. See
                 <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
 
-                <para>If an mount point is beneath another mount point
+                <para>If a mount point is beneath another mount point
                 in the file system hierarchy, a dependency between both
                 units is created automatically.</para>
 
                 in the file system hierarchy, a dependency between both
                 units is created automatically.</para>
 
-                <para>Mount points created at runtime independent on
-                unit files or <filename>/etc/fstab</filename> will be
+                <para>Mount points created at runtime (independently of
+                unit files or <filename>/etc/fstab</filename>) will be
                 monitored by systemd and appear like any other mount
                 monitored by systemd and appear like any other mount
-                unit in systemd.</para>
+                unit in systemd.
+                See <filename>/proc/self/mountinfo</filename> description
+                in <citerefentry project='man-pages'><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+                </para>
+
+                <para>Some file systems have special semantics as API
+                file systems for kernel-to-userspace and
+                userspace-to-userpace interfaces. Some of them may not
+                be changed via mount units, and cannot be disabled.
+                For a longer discussion see <ulink
+                url="http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems">API
+                File Systems</ulink>.</para>
         </refsect1>
 
         <refsect1>
         </refsect1>
 
         <refsect1>
                 <para>Mount units may either be configured via unit
                 files, or via <filename>/etc/fstab</filename> (see
                 <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
                 <para>Mount units may either be configured via unit
                 files, or via <filename>/etc/fstab</filename> (see
                 <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                for details).</para>
+                for details). Mounts listed in
+                <filename>/etc/fstab</filename> will be converted into
+                native units dynamically at boot and when the
+                configuration of the system manager is reloaded. In
+                general, configuring mount points through
+                <filename>/etc/fstab</filename> is the preferred
+                approach. See
+                <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                for details about the conversion.</para>
 
                 <para>When reading <filename>/etc/fstab</filename> a
                 few special mount options are understood by systemd
                 which influence how dependencies are created for mount
 
                 <para>When reading <filename>/etc/fstab</filename> a
                 few special mount options are understood by systemd
                 which influence how dependencies are created for mount
-                points from <filename>/etc/fstab</filename>. If
-                <option>comment=systemd.mount</option> is specified as
-                mount option, then systemd will create a dependency of
-                type <option>Wants</option> from either
-                <filename>local-fs.target</filename> or
+                points. systemd will create a dependency of type
+                <option>Wants</option> or <option>Requires</option>
+                (see option <option>nofail</option> below), from
+                either <filename>local-fs.target</filename> or
                 <filename>remote-fs.target</filename>, depending
                 <filename>remote-fs.target</filename>, depending
-                whether the file system is local or remote. If
-                <option>comment=systemd.automount</option> is set, an
-                automount unit will be created for the file system. See
-                <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                for details.</para>
+                whether the file system is local or remote.</para>
+
+                <variablelist class='fstab-options'>
+
+                  <varlistentry>
+                    <term><option>x-systemd.automount</option></term>
+
+                    <listitem><para>An automount unit will be created
+                    for the file system. See
+                    <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                    for details.</para></listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>x-systemd.device-timeout=</option></term>
+
+                    <listitem><para>Configure how long systemd should
+                    wait for a device to show up before giving up on
+                    an entry from
+                    <filename>/etc/fstab</filename>. Specify a time in
+                    seconds or explicitly append a unit as
+                    <literal>s</literal>, <literal>min</literal>,
+                    <literal>h</literal>,
+                    <literal>ms</literal>.</para>
+
+                    <para>Note that this option can only be used in
+                    <filename>/etc/fstab</filename>, and will be
+                    ignored when part of <varname>Options=</varname>
+                    setting in a unit file.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>noauto</option></term>
+                    <term><option>auto</option></term>
+
+                    <listitem><para>With <option>noauto</option>, this
+                    mount will not be added as a dependency for
+                    <filename>local-fs.target</filename> or
+                    <filename>remote-fs.target</filename>. This means
+                    that it will not be mounted automatically during
+                    boot, unless it is pulled in by some other
+                    unit. Option <option>auto</option> has the
+                    opposite meaning and is the default.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>nofail</option></term>
+
+                    <listitem><para>With <option>nofail</option> this
+                    mount will be only wanted, not required, by
+                    <filename>local-fs.target</filename> or
+                    <filename>remote-fs.target</filename>. This means
+                    that the boot will continue even if this mount
+                    point is not mounted successfully.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>x-initrd.mount</option></term>
+
+                    <listitem><para>An additional filesystem to be
+                    mounted in the initramfs. See
+                    <filename>initrd-fs.target</filename> description
+                    in
+                    <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
+                    </para></listitem>
+                  </varlistentry>
+                </variablelist>
 
                 <para>If a mount point is configured in both
 
                 <para>If a mount point is configured in both
-                <filename>/etc/fstab</filename> and a unit file, the
-                configuration in the latter takes precedence.</para>
+                <filename>/etc/fstab</filename> and a unit file that
+                is stored below <filename>/usr</filename>, the former
+                will take precedence. If the unit file is stored below
+                <filename>/etc</filename>, it will take
+                precedence. This means: native unit files take
+                precedence over traditional configuration files, but
+                this is superseded by the rule that configuration in
+                <filename>/etc</filename> will always take precedence
+                over configuration in
+                <filename>/usr</filename>.</para>
         </refsect1>
 
         <refsect1>
         </refsect1>
 
         <refsect1>
                 supervises. A number of options that may be used in
                 this section are shared with other unit types. These
                 options are documented in
                 supervises. A number of options that may be used in
                 this section are shared with other unit types. These
                 options are documented in
-                <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The
+                <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                and
+                <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The
                 options specific to the [Mount] section of mount
                 units are the following:</para>
 
                 options specific to the [Mount] section of mount
                 units are the following:</para>
 
-                <variablelist>
+                <variablelist class='unit-directives'>
 
                         <varlistentry>
                                 <term><varname>What=</varname></term>
 
                         <varlistentry>
                                 <term><varname>What=</varname></term>
                                 <term><varname>Where=</varname></term>
                                 <listitem><para>Takes an absolute path
                                 of a directory of the mount point. If
                                 <term><varname>Where=</varname></term>
                                 <listitem><para>Takes an absolute path
                                 of a directory of the mount point. If
-                                the mount point is not existing at
+                                the mount point does not exist at the
                                 time of mounting, it is created. This
                                 string must be reflected in the unit
                                 time of mounting, it is created. This
                                 string must be reflected in the unit
-                                file name. (See above.) This option is
+                                filename. (See above.) This option is
                                 mandatory.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                                 <term><varname>Type=</varname></term>
                                 <listitem><para>Takes a string for the
                                 mandatory.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                                 <term><varname>Type=</varname></term>
                                 <listitem><para>Takes a string for the
-                                filesystem type. See
+                                file system type. See
                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                                 for details. This setting is
                                 optional.</para></listitem>
                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                                 for details. This setting is
                                 optional.</para></listitem>
                                 <term><varname>Options=</varname></term>
 
                                 <listitem><para>Mount options to use
                                 <term><varname>Options=</varname></term>
 
                                 <listitem><para>Mount options to use
-                                when mounting. This takes a comma
-                                seperated list of options. This
+                                when mounting. This takes a
+                                comma-separated list of options. This
                                 setting is optional.</para></listitem>
                         </varlistentry>
 
                                 setting is optional.</para></listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>SloppyOptions=</varname></term>
+
+                                <listitem><para>Takes a boolean
+                                argument. If true, parsing of the
+                                options specified in
+                                <varname>Options=</varname> is
+                                relaxed, and unknown mount options are
+                                tolerated. This corresponds with
+                                <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>'s
+                                <parameter>-s</parameter>
+                                switch. Defaults to
+                                off.</para></listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><varname>DirectoryMode=</varname></term>
                                 <listitem><para>Directories of mount
                         <varlistentry>
                                 <term><varname>DirectoryMode=</varname></term>
                                 <listitem><para>Directories of mount
                                 <listitem><para>Configures the time to
                                 wait for the mount command to
                                 finish. If a command does not exit
                                 <listitem><para>Configures the time to
                                 wait for the mount command to
                                 finish. If a command does not exit
-                                within the configured time the mount
+                                within the configured time, the mount
                                 will be considered failed and be shut
                                 down again. All commands still running
                                 will be terminated forcibly via
                                 will be considered failed and be shut
                                 down again. All commands still running
                                 will be terminated forcibly via
-                                SIGTERM, and after another delay of
-                                this time with SIGKILL. (See
-                                <option>KillMode=</option> below.)
+                                <constant>SIGTERM</constant>, and after another delay of
+                                this time with <constant>SIGKILL</constant>. (See
+                                <option>KillMode=</option> in
+                                <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>.)
                                 Takes a unit-less value in seconds, or
                                 a time span value such as "5min
                                 20s". Pass 0 to disable the timeout
                                 Takes a unit-less value in seconds, or
                                 a time span value such as "5min
                                 20s". Pass 0 to disable the timeout
-                                logic. Defaults to
-                                60s.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><varname>KillMode=</varname></term>
-                                <listitem><para>Specifies how
-                                processes of this mount shall be
-                                killed. One of
-                                <option>control-group</option>,
-                                <option>process-group</option>,
-                                <option>process</option>,
-                                <option>none</option>.</para>
-
-                                <para>This option is mostly equivalent
-                                to the <option>KillMode=</option>
-                                option of service files. See
-                                <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                                for details.</para></listitem>
+                                logic. The default value is set from the manager configuration
+                                file's <varname>DefaultTimeoutStart=</varname> variable.</para></listitem>
                         </varlistentry>
                 </variablelist>
                         </varlistentry>
                 </variablelist>
+
+                <para>Check
+                <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                and
+                <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                for more settings.</para>
         </refsect1>
 
         <refsect1>
                   <title>See Also</title>
                   <para>
         </refsect1>
 
         <refsect1>
                   <title>See Also</title>
                   <para>
-                          <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                          <citerefentry project='man-pages'><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                   </para>
         </refsect1>
 
                   </para>
         </refsect1>