]> git.ipfire.org Git - thirdparty/util-linux.git/blobdiff - sys-utils/umount.8
Manual pages: mount.8, umount.8: Clarify that "namespace" means "mount namespace"
[thirdparty/util-linux.git] / sys-utils / umount.8
index caef3b04855cd00bd8ea7b0903e68a62f6a32698..edcb6cc1f9117aa02c8f8309c3fea3e15c268b8a 100644 (file)
@@ -55,16 +55,21 @@ working directory there, or when a swap file on it is in use.  The
 offending process could even be
 .B umount
 itself - it opens libc, and libc in its turn may open for example locale
-files.  A lazy unmount avoids this problem.
+files.  A lazy unmount avoids this problem, but it may introduce another
+issues. See \fB\-\-lazy\fR description below.
 .SH OPTIONS
 .TP
 .BR \-a , " \-\-all"
 All of the filesystems described in
-.I /etc/mtab
-are unmounted, except the \fIproc\fR filesystem.
+.I /proc/self/mountinfo
+(or in deprecated /etc/mtab)
+are unmounted, except the proc, devfs, devpts, sysfs, rpc_pipefs and nfsd
+filesystems. This list of the filesystems may be replaced by \fB\-\-types\fR
+umount option.
 .TP
 .BR \-A , " \-\-all\-targets"
-Unmount all mountpoints in the current namespace for the specified filesystem.
+Unmount all mountpoints in the current mount namespace
+for the specified filesystem.
 The filesystem can be specified by one of the mountpoints or the device name (or
 UUID, etc.).  When this option is used together with \fB\-\-recursive\fR, then
 all nested mounts within the filesystem are recursively unmounted.
@@ -72,9 +77,17 @@ This option is only supported on systems where /etc/mtab is a symlink
 to /proc/mounts.
 .TP
 .BR \-c , " \-\-no\-canonicalize"
-Do not canonicalize paths.  For more details about this option see the
+Do not canonicalize paths.  The paths canonicalization is based on
+.BR stat (2)
+and
+.BR readlink (2)
+system calls. These system calls may hang in some cases (for example on NFS if
+server is not available). The option has to be used with canonical path to the
+mount point.
+
+For more details about this option see the
 .BR mount (8)
-man page.  Note that \fBumount\fR does not pass this option to the
+man page. Note that \fBumount\fR does not pass this option to the
 .BI /sbin/umount. type
 helpers.
 .TP
@@ -87,19 +100,18 @@ in this case "autoclear" functionality is enabled by default.
 .B \-\-fake
 Causes everything to be done except for the actual system call or umount helper
 execution; this 'fakes' unmounting the filesystem.  It can be used to remove
-entries from
+entries from the deprecated
 .I /etc/mtab
 that were unmounted earlier with the
 .B \-n
 option.
 .TP
 .BR \-f , " \-\-force"
-Force an unmount (in case of an unreachable NFS system).  (Requires kernel
-2.1.116 or later.)
+Force an unmount (in case of an unreachable NFS system).
 
 Note that this option does not guarantee that umount command does not hang.
 It's strongly recommended to use absolute paths without symlinks to avoid
-unwanted readlink and stat syscalls on unreachable NFS in umount.
+unwanted readlink and stat system calls on unreachable NFS in umount.
 .TP
 .BR \-i , " \-\-internal\-only"
 Do not call the \fB/sbin/umount.\fIfilesystem\fR helper even if it exists.
@@ -108,7 +120,30 @@ By default such a helper program is called if it exists.
 .BR \-l , " \-\-lazy"
 Lazy unmount.  Detach the filesystem from the file hierarchy now,
 and clean up all references to this filesystem as soon as it is not busy
-anymore.  (Requires kernel 2.4.11 or later.)
+anymore.
+
+A system reboot would be expected in near future if you're going to use this
+option for network filesystem or local filesystem with submounts.  The
+recommended use-case for \fBumount \-l\fR is to prevent hangs on shutdown due to
+an unreachable network share where a normal umount will hang due to a downed
+server or a network partition. Remounts of the share will not be possible.
+
+.TP
+.BR \-N , " \-\-namespace " \fIns
+Perform umount in the mount namespace specified by \fIns\fR.
+\fIns\fR is either PID of process running in that namespace
+or special file representing that namespace.
+.sp
+.BR umount (8)
+switches to the namespace when it reads /etc/fstab, writes /etc/mtab (or writes to /run/mount) and calls
+.BR umount (2)
+system call, otherwise it runs in the original namespace.
+It means that the target mount namespace does not have
+to contain any libraries or another requirements necessary to execute
+.BR umount (2)
+command.
+.sp
+See \fBmount_namespaces\fR(7) for more information.
 .TP
 .BR \-n , " \-\-no\-mtab"
 Unmount without writing in
@@ -122,6 +157,9 @@ Each option can be prefixed with
 .B no
 to indicate that no action should be taken for this option.
 .TP
+.BR \-q , " \-\-quiet"
+Suppress "not mounted" error messages.
+.TP
 .BR \-R , " \-\-recursive"
 Recursively unmount each specified directory.  Recursion for each directory will
 stop if any unmount operation in the chain fails for any reason.  The relationship
@@ -140,12 +178,11 @@ More than one type may be specified in a comma-separated list.  The list
 of filesystem types can be prefixed with
 .B no
 to indicate that no action should be taken for all of the mentioned types.
-.BR
 Note that
 .B umount
 reads information about mounted filesystems from kernel (/proc/mounts) and
 filesystem names may be different than filesystem names used in the /etc/fstab
-(e.g. "nfs4" vs. "nfs").
+(e.g., "nfs4" vs. "nfs").
 .TP
 .BR \-v , " \-\-verbose"
 Verbose mode.
@@ -155,7 +192,26 @@ Display version information and exit.
 .TP
 .BR \-h , " \-\-help"
 Display help text and exit.
-.SH "LOOP DEVICE"
+.SH NON-SUPERUSER UMOUNTS
+Normally, only the superuser can umount filesystems.
+However, when
+.I fstab
+contains the
+.B user
+option on a line, anybody can umount the corresponding filesystem.  For more details see
+.BR mount (8)
+man page.
+.PP
+Since version 2.34 \fBumount\fR command allows to perform umount operation also
+for fuse filesystems if kernel mount table contains user's ID.  In this case fstab
+user= mount option is not required.
+.PP
+Since version 2.35 \fBumount\fR command does not exit when user permissions are
+inadequate by internal libmount security rules.  It drops suid permissions
+and continue as regular non-root user. It allows to support use-cases where
+root permissions are not necessary (e.g., fuse filesystems, user namespaces,
+etc).
+.SH LOOP DEVICE
 The
 .B umount
 command will automatically detach loop device previously initialized by
@@ -165,7 +221,7 @@ command independently of /etc/mtab.
 In this case the device is initialized with "autoclear" flag (see
 .BR losetup (8)
 output for more details), otherwise it's necessary to use the option \fB \-\-detach\-loop\fR
-or call \fBlosetup -d <device>\fR. The autoclear feature is supported since Linux 2.6.25.
+or call \fBlosetup \-d <device>\fR. The autoclear feature is supported since Linux 2.6.25.
 .SH EXTERNAL HELPERS
 The syntax of external unmount helpers is:
 .PP
@@ -173,6 +229,8 @@ The syntax of external unmount helpers is:
 .BI umount. suffix
 .RI { directory | device }
 .RB [ \-flnrv ]
+.RB [ \-N
+.IR namespace ]
 .RB [ \-t
 .IR type . subtype ]
 .RE
@@ -194,13 +252,9 @@ a mountpoint that is not defined in \fI/etc/fstab\fR
 A \fBhelper=\fItype\fR marker in the mtab file will redirect
 all unmount requests
 to the \fB/sbin/umount.\fItype\fR helper independently of UID.
-.SH FILES
-.TP
-.B /etc/mtab
-table of mounted filesystems
-.TP
-.B /etc/fstab
-table of known filesystems
+.PP
+Note that \fI/etc/mtab\fR is currently deprecated and helper= and another
+userspace mount options are maintained by libmount.
 .SH ENVIRONMENT
 .IP LIBMOUNT_FSTAB=<path>
 overrides the default location of the fstab file (ignored for suid)
@@ -208,16 +262,28 @@ overrides the default location of the fstab file (ignored for suid)
 overrides the default location of the mtab file (ignored for suid)
 .IP LIBMOUNT_DEBUG=all
 enables libmount debug output
-.SH "SEE ALSO"
-.BR umount (2),
-.BR mount (8),
-.BR losetup (8)
+.SH FILES
+.TP
+.I /etc/mtab
+table of mounted filesystems (deprecated and usually replaced by
+symlink to /proc/mounts)
+.TP
+.I /etc/fstab
+table of known filesystems
+.TP
+.I /proc/self/mountinfo
+table of mounted filesystems generated by kernel.
 .SH HISTORY
 A
 .B umount
 command appeared in Version 6 AT&T UNIX.
+.SH SEE ALSO
+.BR umount (2),
+.BR losetup (8),
+.BR mount_namespaces (7)
+.BR mount (8)
 .SH AVAILABILITY
 The umount command is part of the util-linux package and is available from
-.UR ftp://\:ftp.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
+.UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
 Linux Kernel Archive
 .UE .