chiark / gitweb /
loginctl: convert to sd-bus
[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. See
136                 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
137                 for details about the conversion.</para>
138
139                 <para>When reading <filename>/etc/fstab</filename> a
140                 few special mount options are understood by systemd
141                 which influence how dependencies are created for mount
142                 points from <filename>/etc/fstab</filename>. systemd
143                 will create a dependency of type
144                 <option>Wants</option> from either
145                 <filename>local-fs.target</filename> or
146                 <filename>remote-fs.target</filename>, depending
147                 whether the file system is local or remote. If
148                 <option>x-systemd.automount</option> is set, an
149                 automount unit will be created for the file
150                 system. See
151                 <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
152                 for details. If
153                 <option>x-systemd.device-timeout=</option> is
154                 specified, it may be used to configure how long systemd
155                 should wait for a device to show up before giving up
156                 on an entry from
157                 <filename>/etc/fstab</filename>. Specify a time in
158                 seconds or explicitly specify a unit as
159                 <literal>s</literal>, <literal>min</literal>,
160                 <literal>h</literal>, <literal>ms</literal>.</para>
161
162                 <para>If a mount point is configured in both
163                 <filename>/etc/fstab</filename> and a unit file that
164                 is stored below <filename>/usr</filename>, the former
165                 will take precedence. If the unit file is stored below
166                 <filename>/etc</filename>, it will take
167                 precedence. This means: native unit files take
168                 precedence over traditional configuration files, but
169                 this is superseded by the rule that configuration in
170                 <filename>/etc</filename> will always take precedence
171                 over configuration in
172                 <filename>/usr</filename>.</para>
173         </refsect1>
174
175         <refsect1>
176                 <title>Options</title>
177
178                 <para>Mount files must include a [Mount] section,
179                 which carries information about the file system mount points it
180                 supervises. A number of options that may be used in
181                 this section are shared with other unit types. These
182                 options are documented in
183                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
184                 and
185                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The
186                 options specific to the [Mount] section of mount
187                 units are the following:</para>
188
189                 <variablelist class='unit-directives'>
190
191                         <varlistentry>
192                                 <term><varname>What=</varname></term>
193                                 <listitem><para>Takes an absolute path
194                                 of a device node, file or other
195                                 resource to mount. See
196                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
197                                 for details. If this refers to a
198                                 device node, a dependency on the
199                                 respective device unit is
200                                 automatically created. (See
201                                 <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more information.)
202                                 This option is
203                                 mandatory.</para></listitem>
204                         </varlistentry>
205
206                         <varlistentry>
207                                 <term><varname>Where=</varname></term>
208                                 <listitem><para>Takes an absolute path
209                                 of a directory of the mount point. If
210                                 the mount point does not exist at the
211                                 time of mounting, it is created. This
212                                 string must be reflected in the unit
213                                 filename. (See above.) This option is
214                                 mandatory.</para></listitem>
215                         </varlistentry>
216
217                         <varlistentry>
218                                 <term><varname>Type=</varname></term>
219                                 <listitem><para>Takes a string for the
220                                 file system type. See
221                                 <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>
222                                 for details. This setting is
223                                 optional.</para></listitem>
224                         </varlistentry>
225
226                         <varlistentry>
227                                 <term><varname>Options=</varname></term>
228
229                                 <listitem><para>Mount options to use
230                                 when mounting. This takes a
231                                 comma-separated list of options. This
232                                 setting is optional.</para></listitem>
233                         </varlistentry>
234
235                         <varlistentry>
236                                 <term><varname>DirectoryMode=</varname></term>
237                                 <listitem><para>Directories of mount
238                                 points (and any parent directories)
239                                 are automatically created if
240                                 needed. This option specifies the file
241                                 system access mode used when creating
242                                 these directories. Takes an access
243                                 mode in octal notation. Defaults to
244                                 0755.</para></listitem>
245                         </varlistentry>
246
247                         <varlistentry>
248                                 <term><varname>TimeoutSec=</varname></term>
249                                 <listitem><para>Configures the time to
250                                 wait for the mount command to
251                                 finish. If a command does not exit
252                                 within the configured time, the mount
253                                 will be considered failed and be shut
254                                 down again. All commands still running
255                                 will be terminated forcibly via
256                                 <constant>SIGTERM</constant>, and after another delay of
257                                 this time with <constant>SIGKILL</constant>. (See
258                                 <option>KillMode=</option> in
259                                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>.)
260                                 Takes a unit-less value in seconds, or
261                                 a time span value such as "5min
262                                 20s". Pass 0 to disable the timeout
263                                 logic. The default value is set from the manager configuration
264                                 file's <varname>DefaultTimeoutStart=</varname> variable.</para></listitem>
265                         </varlistentry>
266                 </variablelist>
267
268                 <para>Check
269                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
270                 and
271                 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>
272                 for more settings.</para>
273         </refsect1>
274
275         <refsect1>
276                   <title>See Also</title>
277                   <para>
278                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
279                           <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
280                           <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
281                           <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
282                           <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
283                           <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
284                           <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
285                           <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
286                           <citerefentry><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
287                           <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
288                           <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
289                           <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
290                   </para>
291         </refsect1>
292
293 </refentry>