fuser
—
list IDs of all processes that have one or more files open
fuser |
[-cfkmu ] [-M
core] [-N
system] [-s
signal] file ... |
The fuser
utility writes to stdout the PIDs of processes
that have one or more named files open. For block and character special
devices, all processes using files on that device are listed. A file is
considered open by a process if it was explicitly opened, is the working
directory, root directory, jail root directory, active executable text, kernel
trace file or the controlling terminal of the process. If
-m
option is specified, the
fuser
utility will also look through mmapped files.
The following options are available:
-c
- Treat files as mount points and report on any files open in the file
system.
-f
- The report must be only for named files.
-k
- Send signal to reported processes (
SIGKILL
by default).
-M
core
- Extract values associated with the name list from the specified core
instead of the default /dev/kmem.
-m
- Search through mmapped files too.
-N
system
- Extract the name list from the specified system instead of the default,
which is the kernel image the system has booted from.
-s
signal
- Use given signal name instead of default
SIGKILL
.
-u
- Write the user name associated with each process to stderr.
The following symbols, written to stderr will indicate how files
are used:
- a
- The file is open as append only (
O_APPEND
was specified).
- c
- The file is the current workdir directory of the process.
- d
- The process bypasses fs cache while writing to this file
(
O_DIRECT
was
specified).
- e
- Exclusive lock is hold.
- j
- The file is the jail root of the process.
- m
- The file is mmapped.
- r
- The file is the root directory of the process.
- s
- Shared lock is hold.
- t
- The file is the kernel tracing file for the process.
- w
- The file is open for writing.
- x
- The file is executable text of the process.
- y
- The process uses this file as its controlling tty.
The fuser
utility exits 0 on success,
and >0 if an error occurs.
The command ‘fuser -fu .
’ writes to
standard output the process IDs of processes that are using the current
directory and writes to stderr an indication of how those processes are using
the directory and user names associated with the processes that are using this
directory.
The fuser
utility is expected to conform to
IEEE Std 1003.1-2004 (“POSIX.1”).
The fuser
utility appeared in FreeBSD
9.0.
The fuser
utility and this manual page was written by
Stanislav Sedov
<stas@FreeBSD.org>.
Since fuser
takes a snapshot of the system, it is only
correct for a very short period of time. When working via
kvm(3)
interface the report will be limited to filesystems the
fuser
utility knows about (currently only cd9660,
devfs, nfs, ntfs, nwfs, udf, ufs and zfs).