chiark / gitweb /
2fbad37283459d99c2e77247183e53416889628b
[elogind.git] / man / systemd.mount.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
3 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
4         "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5
6 <!--
7   This file is part of systemd.
8
9   Copyright 2010 Lennart Poettering
10
11   systemd is free software; you can redistribute it and/or modify it
12   under the terms of the GNU Lesser General Public License as published by
13   the Free Software Foundation; either version 2.1 of the License, or
14   (at your option) any later version.
15
16   systemd is distributed in the hope that it will be useful, but
17   WITHOUT ANY WARRANTY; without even the implied warranty of
18   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19   Lesser General Public License for more details.
20
21   You should have received a copy of the GNU Lesser General Public License
22   along with systemd; If not, see <http://www.gnu.org/licenses/>.
23 -->
24
25 <refentry id="systemd.mount">
26         <refentryinfo>
27                 <title>systemd.mount</title>
28                 <productname>systemd</productname>
29
30                 <authorgroup>
31                         <author>
32                                 <contrib>Developer</contrib>
33                                 <firstname>Lennart</firstname>
34                                 <surname>Poettering</surname>
35                                 <email>lennart@poettering.net</email>
36                         </author>
37                 </authorgroup>
38         </refentryinfo>
39
40         <refmeta>
41                 <refentrytitle>systemd.mount</refentrytitle>
42                 <manvolnum>5</manvolnum>
43         </refmeta>
44
45         <refnamediv>
46                 <refname>systemd.mount</refname>
47                 <refpurpose>Mount unit configuration</refpurpose>
48         </refnamediv>
49
50         <refsynopsisdiv>
51                 <para><filename><replaceable>mount</replaceable>.mount</filename></para>
52         </refsynopsisdiv>
53
54         <refsect1>
55                 <title>Description</title>
56
57                 <para>A unit configuration file whose name ends in
58                 <literal>.mount</literal> encodes information about
59                 a file system mount point controlled and supervised by
60                 systemd.</para>
61
62                 <para>This man page lists the configuration options
63                 specific to this unit type. See
64                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
65                 for the common options of all unit configuration
66                 files. The common configuration items are configured
67                 in the generic [Unit] and [Install] sections. The
68                 mount specific configuration options are configured
69                 in the [Mount] section.</para>
70
71                 <para>Additional options are listed in
72                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
73                 which define the execution environment the
74                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
75                 binary is executed in, and in
76                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
77                 which define the way the processes are terminated, and
78                 in
79                 <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
80                 which configure resource control settings for the
81                 processes of the service. Note that the User= and
82                 Group= options are not particularly useful for mount
83                 units specifying a <literal>Type=</literal> option or
84                 using configuration not specified in
85                 <filename>/etc/fstab</filename>;
86                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
87                 will refuse options that are not listed in
88                 <filename>/etc/fstab</filename> if it is not run as
89                 UID 0.</para>
90
91                 <para>Mount units must be named after the mount point
92                 directories they control. Example: the mount point
93                 <filename noindex='true'>/home/lennart</filename> must be configured
94                 in a unit file
95                 <filename>home-lennart.mount</filename>. For details
96                 about the escaping logic used to convert a file system
97                 path to a unit name, see
98                 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
99
100                 <para>Optionally, a mount unit may be accompanied by
101                 an automount unit, to allow on-demand or parallelized
102                 mounting. See
103                 <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
104
105                 <para>If a mount point is beneath another mount point
106                 in the file system hierarchy, a dependency between both
107                 units is created automatically.</para>
108
109                 <para>Mount points created at runtime (independently of
110                 unit files or <filename>/etc/fstab</filename>) will be
111                 monitored by systemd and appear like any other mount
112                 unit in systemd.
113                 See <filename>/proc/self/mountinfo</filename> description
114                 in <citerefentry><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
115                 </para>
116
117                 <para>Some file systems have special semantics as API
118                 file systems for kernel-to-userspace and
119                 userspace-to-userpace interfaces. Some of them may not
120                 be changed via mount units, and cannot be disabled.
121                 For a longer discussion see <ulink
122                 url="http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems">API
123                 File Systems</ulink>.</para>
124         </refsect1>
125
126         <refsect1>
127                 <title><filename>/etc/fstab</filename></title>
128
129                 <para>Mount units may either be configured via unit
130                 files, or via <filename>/etc/fstab</filename> (see
131                 <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
132                 for details). Mounts listed in
133                 <filename>/etc/fstab</filename> will be converted into
134                 native units dynamically at boot and when the
135                 configuration of the system manager is reloaded. In
136                 general, configuring mount points through
137                 <filename>/etc/fstab</filename> is the preferred
138                 approach. See
139                 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
140                 for details about the conversion.</para>
141
142                 <para>When reading <filename>/etc/fstab</filename> a
143                 few special mount options are understood by systemd
144                 which influence how dependencies are created for mount
145                 points from <filename>/etc/fstab</filename>. systemd
146                 will create a dependency of type
147                 <option>Wants</option> from either
148                 <filename>local-fs.target</filename> or
149                 <filename>remote-fs.target</filename>, depending
150                 whether the file system is local or remote. If
151                 <option>x-systemd.automount</option> is set, an
152                 automount unit will be created for the file
153                 system. See
154                 <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
155                 for details. If
156                 <option>x-systemd.device-timeout=</option> is
157                 specified, it may be used to configure how long systemd
158                 should wait for a device to show up before giving up
159                 on an entry from
160                 <filename>/etc/fstab</filename>. Specify a time in
161                 seconds or explicitly specify a unit as
162                 <literal>s</literal>, <literal>min</literal>,
163                 <literal>h</literal>, <literal>ms</literal>.</para>
164
165                 <para>If <option>nofail</option> is given, this mount
166                 will be only wanted, not required, by the
167                 <filename>local-fs.target</filename>. This means that
168                 the boot will continue even if this mount point is not
169                 mounted successfully. Option <option>fail</option> has
170                 the opposite meaning and is the default.</para>
171
172                 <para>If <option>noauto</option> is given, this mount
173                 will not be added as a dependency for
174                 <filename>local-fs.target</filename>. This means that
175                 it will not be mounted automatically during boot,
176                 unless it is pulled in by some other unit. Option
177                 <option>auto</option> has the opposite meaning and is
178                 the default.</para>
179
180                 <para>If a mount point is configured in both
181                 <filename>/etc/fstab</filename> and a unit file that
182                 is stored below <filename>/usr</filename>, the former
183                 will take precedence. If the unit file is stored below
184                 <filename>/etc</filename>, it will take
185                 precedence. This means: native unit files take
186                 precedence over traditional configuration files, but
187                 this is superseded by the rule that configuration in
188                 <filename>/etc</filename> will always take precedence
189                 over configuration in
190                 <filename>/usr</filename>.</para>
191         </refsect1>
192
193         <refsect1>
194                 <title>Options</title>
195
196                 <para>Mount files must include a [Mount] section,
197                 which carries information about the file system mount points it
198                 supervises. A number of options that may be used in
199                 this section are shared with other unit types. These
200                 options are documented in
201                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
202                 and
203                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The
204                 options specific to the [Mount] section of mount
205                 units are the following:</para>
206
207                 <variablelist class='unit-directives'>
208
209                         <varlistentry>
210                                 <term><varname>What=</varname></term>
211                                 <listitem><para>Takes an absolute path
212                                 of a device node, file or other
213                                 resource to mount. See
214                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
215                                 for details. If this refers to a
216                                 device node, a dependency on the
217                                 respective device unit is
218                                 automatically created. (See
219                                 <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more information.)
220                                 This option is
221                                 mandatory.</para></listitem>
222                         </varlistentry>
223
224                         <varlistentry>
225                                 <term><varname>Where=</varname></term>
226                                 <listitem><para>Takes an absolute path
227                                 of a directory of the mount point. If
228                                 the mount point does not exist at the
229                                 time of mounting, it is created. This
230                                 string must be reflected in the unit
231                                 filename. (See above.) This option is
232                                 mandatory.</para></listitem>
233                         </varlistentry>
234
235                         <varlistentry>
236                                 <term><varname>Type=</varname></term>
237                                 <listitem><para>Takes a string for the
238                                 file system type. See
239                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
240                                 for details. This setting is
241                                 optional.</para></listitem>
242                         </varlistentry>
243
244                         <varlistentry>
245                                 <term><varname>Options=</varname></term>
246
247                                 <listitem><para>Mount options to use
248                                 when mounting. This takes a
249                                 comma-separated list of options. This
250                                 setting is optional.</para></listitem>
251                         </varlistentry>
252
253                         <varlistentry>
254                                 <term><varname>SloppyOptions=</varname></term>
255
256                                 <listitem><para>Takes a boolean
257                                 argument. If true parsing of the
258                                 options specified in
259                                 <varname>Options=</varname> is
260                                 relaxed, and unknown mount options are
261                                 tolerated. This corresponds with
262                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>'s
263                                 <parameter>-s</parameter>
264                                 switch. Defaults to
265                                 off.</para></listitem>
266                         </varlistentry>
267
268                         <varlistentry>
269                                 <term><varname>DirectoryMode=</varname></term>
270                                 <listitem><para>Directories of mount
271                                 points (and any parent directories)
272                                 are automatically created if
273                                 needed. This option specifies the file
274                                 system access mode used when creating
275                                 these directories. Takes an access
276                                 mode in octal notation. Defaults to
277                                 0755.</para></listitem>
278                         </varlistentry>
279
280                         <varlistentry>
281                                 <term><varname>TimeoutSec=</varname></term>
282                                 <listitem><para>Configures the time to
283                                 wait for the mount command to
284                                 finish. If a command does not exit
285                                 within the configured time, the mount
286                                 will be considered failed and be shut
287                                 down again. All commands still running
288                                 will be terminated forcibly via
289                                 <constant>SIGTERM</constant>, and after another delay of
290                                 this time with <constant>SIGKILL</constant>. (See
291                                 <option>KillMode=</option> in
292                                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>.)
293                                 Takes a unit-less value in seconds, or
294                                 a time span value such as "5min
295                                 20s". Pass 0 to disable the timeout
296                                 logic. The default value is set from the manager configuration
297                                 file's <varname>DefaultTimeoutStart=</varname> variable.</para></listitem>
298                         </varlistentry>
299                 </variablelist>
300
301                 <para>Check
302                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
303                 and
304                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>
305                 for more settings.</para>
306         </refsect1>
307
308         <refsect1>
309                   <title>See Also</title>
310                   <para>
311                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
312                           <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
313                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
314                           <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
315                           <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
316                           <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
317                           <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
318                           <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
319                           <citerefentry><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
320                           <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
321                           <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
322                           <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
323                   </para>
324         </refsect1>
325
326 </refentry>