freebsd-skq/sbin/umount/umount.8
rmacklem c577abbf59 Add a new "-N" option to umount(8), that does a forced dismount of an NFS mount
point.

The new "-N" option does a forced dismount of an NFS mount point, but avoids
doing any checking of the mounted-on path, so that it will not get hung
when a vnode lock is held by another hung process on the mounted-on vnode.
The most common case of this is a "umount" with the "-f" option.
Other than avoiding checking the mounted-on path, it performs the same
forced dismount as a successful "umount -f" would do.

This commit includes a content change to the man page.

Tested by:	pho
Reviewed by:	kib
MFC after:	2 weeks
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D11735
2017-07-29 20:08:25 +00:00

189 lines
5.1 KiB
Groff

.\" Copyright (c) 1980, 1989, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)umount.8 8.2 (Berkeley) 5/8/95
.\" $FreeBSD$
.\"
.Dd July 25, 2017
.Dt UMOUNT 8
.Os
.Sh NAME
.Nm umount
.Nd unmount file systems
.Sh SYNOPSIS
.Nm
.Op Fl fNnv
.Ar special ... | node ... | fsid ...
.Nm
.Fl a | A
.Op Fl F Ar fstab
.Op Fl fnv
.Op Fl h Ar host
.Op Fl t Ar type
.Sh DESCRIPTION
The
.Nm
utility calls the
.Xr unmount 2
system call to remove a file system from the file system tree.
The file system can be specified by its
.Ar special
device or remote node (rhost:path), the path to the mount point
.Ar node
or by the file system ID
.Ar fsid
as reported by
.Dq mount -v
when run by root.
.Pp
The options are as follows:
.Bl -tag -width indent
.It Fl a
All the file systems described in
.Xr fstab 5
are unmounted.
.It Fl A
All the currently mounted file systems except
the root are unmounted.
.It Fl F Ar fstab
Specify the
.Pa fstab
file to use.
.It Fl f
The file system is forcibly unmounted.
Active special devices continue to work,
but all other files return errors if further accesses are attempted.
The root file system cannot be forcibly unmounted.
For NFS, a forced dismount can take up to 1 minute or more to
complete against an unresponsive server and may throw away
data not yet written to the server for this case.
If a process, such as
.Nm
without the
.Fl f
flag is hung on an
.Tn NFS
mount point, use the
.Fl N
flag instead.
Also, doing a forced dismount of an NFSv3 mount when
.Xr rpc.lockd 8
is running is unsafe and can result in a crash.
.It Fl h Ar host
Only file systems mounted from the specified host will be
unmounted.
This option implies the
.Fl A
option and, unless otherwise specified with the
.Fl t
option, will only unmount
.Tn NFS
file systems.
.It Fl N
Do a forced dismount of an
.Tn NFS
mount point without checking the mount path.
This option can only be used with the path to the mount point
.Ar node
and the path must be specified exactly as it was at mount time.
This option is useful when a process is hung waiting for an unresponsive
.Tn NFS
server while holding a vnode lock on the mounted-on vnode, such that
.Nm
with the
.Fl f
flag can't complete.
Using this option can result in a loss of file updates that have not been
flushed to the
.Tn NFS
server.
.It Fl n
Unless the
.Fl f
is used, the
.Nm
will not unmount an active file system.
It will, however, perform a flush.
This flag disables this behaviour, preventing the flush
if there are any files open.
.It Fl t Ar type
Is used to indicate the actions should only be taken on
file systems of the specified type.
More than one type may be specified in a comma separated list.
The list of file system types can be prefixed with
.Dq no
to specify the file system types for which action should
.Em not
be taken.
For example, the
.Nm
command:
.Bd -literal -offset indent
umount -a -t nfs,nullfs
.Ed
.Pp
unmounts all file systems of the type
.Tn NFS
and
.Tn NULLFS
that are listed in the
.Xr fstab 5
file.
.It Fl v
Verbose, additional information is printed out as each file system
is unmounted.
.El
.Sh ENVIRONMENT
.Bl -tag -width ".Ev PATH_FSTAB"
.It Ev PATH_FSTAB
If the environment variable
.Ev PATH_FSTAB
is set, all operations are performed against the specified file.
.Ev PATH_FSTAB
will not be honored if the process environment or memory address space is
considered
.Dq tainted .
(See
.Xr issetugid 2
for more information.)
.El
.Sh FILES
.Bl -tag -width /etc/fstab -compact
.It Pa /etc/fstab
file system table
.El
.Sh SEE ALSO
.Xr unmount 2 ,
.Xr fstab 5 ,
.Xr autounmountd 8 ,
.Xr mount 8
.Sh HISTORY
A
.Nm
utility appeared in
.At v1 .