]> git.ipfire.org Git - thirdparty/util-linux.git/blame_incremental - sys-utils/umount.8
lsblk: allow to specify tree column
[thirdparty/util-linux.git] / sys-utils / umount.8
... / ...
CommitLineData
1.\" Copyright (c) 1996 Andries Brouwer
2.\" This page is somewhat derived from a page that was
3.\" (c) 1980, 1989, 1991 The Regents of the University of California
4.\" and had been heavily modified by Rik Faith and myself.
5.\"
6.\" This is free documentation; you can redistribute it and/or
7.\" modify it under the terms of the GNU General Public License as
8.\" published by the Free Software Foundation; either version 2 of
9.\" the License, or (at your option) any later version.
10.\"
11.\" The GNU General Public License's references to "object code"
12.\" and "executables" are to be interpreted as the output of any
13.\" document formatting or typesetting system, including
14.\" intermediate and printed output.
15.\"
16.\" This manual is distributed in the hope that it will be useful,
17.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
18.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19.\" GNU General Public License for more details.
20.\"
21.\" You should have received a copy of the GNU General Public License along
22.\" with this program; if not, write to the Free Software Foundation, Inc.,
23.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24.\"
25.TH UMOUNT 8 "July 2014" "util-linux" "System Administration"
26.SH NAME
27umount \- unmount file systems
28.SH SYNOPSIS
29.B umount \-a
30.RB [ \-dflnrv ]
31.RB [ \-t
32.IR fstype ]
33.RB [ \-O
34.IR option ...]
35.sp
36.B umount
37.RB [ \-dflnrv ]
38.RI { directory | device }...
39.sp
40.B umount
41.BR \-h | \-V
42
43.SH DESCRIPTION
44The
45.B umount
46command detaches the mentioned file system(s) from the file hierarchy. A
47file system is specified by giving the directory where it has been
48mounted. Giving the special device on which the file system lives may
49also work, but is obsolete, mainly because it will fail in case this
50device was mounted on more than one directory.
51.PP
52Note that a file system cannot be unmounted when it is 'busy' - for
53example, when there are open files on it, or when some process has its
54working directory there, or when a swap file on it is in use. The
55offending process could even be
56.B umount
57itself - it opens libc, and libc in its turn may open for example locale
58files. A lazy unmount avoids this problem, but it may introduce another
59issues. See \fB\-\-lazy\fR description below.
60.SH OPTIONS
61.TP
62.BR \-a , " \-\-all"
63All of the filesystems described in
64.I /proc/self/mountinfo
65(or in deprecated /etc/mtab)
66are unmounted, except the proc, devfs, devpts, sysfs, rpc_pipefs and nfsd
67filesystems. This list of the filesystems may be replaced by \fB\-\-types\fR
68umount option.
69.TP
70.BR \-A , " \-\-all\-targets"
71Unmount all mountpoints in the current namespace for the specified filesystem.
72The filesystem can be specified by one of the mountpoints or the device name (or
73UUID, etc.). When this option is used together with \fB\-\-recursive\fR, then
74all nested mounts within the filesystem are recursively unmounted.
75This option is only supported on systems where /etc/mtab is a symlink
76to /proc/mounts.
77.TP
78.BR \-c , " \-\-no\-canonicalize"
79Do not canonicalize paths. The paths canonicalization is based on
80.BR stat (2)
81and
82.BR readlink (2)
83system calls. These system calls may hang in some cases (for example on NFS if
84server is not available). The option has to be used with canonical path to the
85mount point.
86
87For more details about this option see the
88.BR mount (8)
89man page. Note that \fBumount\fR does not pass this option to the
90.BI /sbin/umount. type
91helpers.
92.TP
93.BR \-d , " \-\-detach\-loop"
94When the unmounted device was a loop device, also free this loop
95device. This option is unnecessary for devices initialized by
96.BR mount (8),
97in this case "autoclear" functionality is enabled by default.
98.TP
99.B \-\-fake
100Causes everything to be done except for the actual system call or umount helper
101execution; this 'fakes' unmounting the filesystem. It can be used to remove
102entries from the deprecated
103.I /etc/mtab
104that were unmounted earlier with the
105.B \-n
106option.
107.TP
108.BR \-f , " \-\-force"
109Force an unmount (in case of an unreachable NFS system).
110
111Note that this option does not guarantee that umount command does not hang.
112It's strongly recommended to use absolute paths without symlinks to avoid
113unwanted readlink and stat system calls on unreachable NFS in umount.
114.TP
115.BR \-i , " \-\-internal\-only"
116Do not call the \fB/sbin/umount.\fIfilesystem\fR helper even if it exists.
117By default such a helper program is called if it exists.
118.TP
119.BR \-l , " \-\-lazy"
120Lazy unmount. Detach the filesystem from the file hierarchy now,
121and clean up all references to this filesystem as soon as it is not busy
122anymore.
123
124A system reboot would be expected in near future if you're going to use this
125option for network filesystem or local filesystem with submounts. The
126recommended use-case for \fBumount -l\fR is to prevent hangs on shutdown due to
127an unreachable network share where a normal umount will hang due to a downed
128server or a network partition. Remounts of the share will not be possible.
129
130.TP
131.BR \-N , " \-\-namespace " \fIns
132Perform umount in namespace specified by \fIns\fR.
133\fIns\fR is either PID of process running in that namespace
134or special file representing that namespace.
135.sp
136.BR umount (8)
137switches to the namespace when it reads /etc/fstab, writes /etc/mtab (or writes to /run/mount) and calls
138.BR umount (2)
139system call, otherwise it runs in the original namespace. It means that the target namespace does not have
140to contain any libraries or another requirements necessary to execute
141.BR umount (2)
142command.
143.sp
144See \fBnamespaces\fR(7) for more information.
145.TP
146.BR \-n , " \-\-no\-mtab"
147Unmount without writing in
148.IR /etc/mtab .
149.TP
150.BR \-O , " \-\-test\-opts " \fIoption\fR...
151Unmount only the filesystems that have the specified option set in
152.IR /etc/fstab .
153More than one option may be specified in a comma-separated list.
154Each option can be prefixed with
155.B no
156to indicate that no action should be taken for this option.
157.TP
158.BR \-q , " \-\-quiet"
159Suppress "not mounted" error messages.
160.TP
161.BR \-R , " \-\-recursive"
162Recursively unmount each specified directory. Recursion for each directory will
163stop if any unmount operation in the chain fails for any reason. The relationship
164between mountpoints is determined by /proc/self/mountinfo entries. The filesystem
165must be specified by mountpoint path; a recursive unmount by device name (or UUID)
166is unsupported.
167.TP
168.BR \-r , " \-\-read\-only"
169When an unmount fails, try to remount the filesystem read-only.
170.TP
171.BR \-t , " \-\-types " \fItype\fR...
172Indicate that the actions should only be taken on filesystems of the
173specified
174.IR type .
175More than one type may be specified in a comma-separated list. The list
176of filesystem types can be prefixed with
177.B no
178to indicate that no action should be taken for all of the mentioned types.
179Note that
180.B umount
181reads information about mounted filesystems from kernel (/proc/mounts) and
182filesystem names may be different than filesystem names used in the /etc/fstab
183(e.g. "nfs4" vs. "nfs").
184.TP
185.BR \-v , " \-\-verbose"
186Verbose mode.
187.TP
188.BR \-V , " \-\-version"
189Display version information and exit.
190.TP
191.BR \-h , " \-\-help"
192Display help text and exit.
193.SH "LOOP DEVICE"
194The
195.B umount
196command will automatically detach loop device previously initialized by
197.BR mount (8)
198command independently of /etc/mtab.
199
200In this case the device is initialized with "autoclear" flag (see
201.BR losetup (8)
202output for more details), otherwise it's necessary to use the option \fB \-\-detach\-loop\fR
203or call \fBlosetup -d <device>\fR. The autoclear feature is supported since Linux 2.6.25.
204.SH EXTERNAL HELPERS
205The syntax of external unmount helpers is:
206.PP
207.RS
208.BI umount. suffix
209.RI { directory | device }
210.RB [ \-flnrv ]
211.RB [ \-N
212.IR namespace ]
213.RB [ \-t
214.IR type . subtype ]
215.RE
216.PP
217where \fIsuffix\fR is the filesystem type (or the value from a
218\fBuhelper=\fR or \fBhelper=\fR marker in the mtab file).
219The \fB\-t\fR option can be used for filesystems that
220have subtype support. For example:
221.PP
222.RS
223.B umount.fuse \-t fuse.sshfs
224.RE
225.PP
226A \fBuhelper=\fIsomething\fR marker (unprivileged helper) can appear in
227the \fI/etc/mtab\fR file when ordinary users need to be able to unmount
228a mountpoint that is not defined in \fI/etc/fstab\fR
229(for example for a device that was mounted by \fBudisks\fR(1)).
230.PP
231A \fBhelper=\fItype\fR marker in the mtab file will redirect
232all unmount requests
233to the \fB/sbin/umount.\fItype\fR helper independently of UID.
234.PP
235Note that \fI/etc/mtab\fR is currently deprecated and helper= and another
236userspace mount options are maintained by libmount.
237.SH FILES
238.TP
239.I /etc/mtab
240table of mounted filesystems (deprecated and usually replaced by
241symlink to /proc/mounts)
242.TP
243.I /etc/fstab
244table of known filesystems
245.TP
246.I /proc/self/mountinfo
247table of mounted filesystems generated by kernel.
248.SH ENVIRONMENT
249.IP LIBMOUNT_FSTAB=<path>
250overrides the default location of the fstab file (ignored for suid)
251.IP LIBMOUNT_MTAB=<path>
252overrides the default location of the mtab file (ignored for suid)
253.IP LIBMOUNT_DEBUG=all
254enables libmount debug output
255.SH "SEE ALSO"
256.BR umount (2),
257.BR losetup (8),
258.BR mount (8)
259.SH HISTORY
260A
261.B umount
262command appeared in Version 6 AT&T UNIX.
263.SH AVAILABILITY
264The umount command is part of the util-linux package and is available from
265.UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
266Linux Kernel Archive
267.UE .