summaryrefslogtreecommitdiff
path: root/usr/src/man/man1m/fuser.1m
blob: 66f371e2c81970bab81a01036af4b827b7bef470 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
'\" te
.\"  Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH FUSER 1M "Oct 21, 2003"
.SH NAME
fuser \- identify users of files and devices
.SH SYNOPSIS
.LP
.nf
\fB/usr/sbin/fuser\fR [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR
     [ [\fB- \fR] [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR] ...
.fi

.SH DESCRIPTION
.sp
.LP
The \fBfuser\fR utility displays the process \fBID\fRs of the processes that
are using the \fIfiles\fR specified as arguments.
.sp
.LP
Each process \fBID\fR is followed by a letter code. These letter codes are
interpreted as follows. If the process is using the file as
.sp
.ne 2
.na
\fB\fBc\fR\fR
.ad
.RS 5n
Indicates that the process is using the file as its current directory.
.RE

.sp
.ne 2
.na
\fB\fBm\fR\fR
.ad
.RS 5n
Indicates that the process is using a file mapped with \fBmmap\fR(2). See
\fBmmap\fR(2) for details.
.RE

.sp
.ne 2
.na
\fB\fBn\fR\fR
.ad
.RS 5n
Indicates that the process is holding a non-blocking mandatory lock on the
file.
.RE

.sp
.ne 2
.na
\fB\fBo\fR\fR
.ad
.RS 5n
Indicates that the process is using the file as an open file.
.RE

.sp
.ne 2
.na
\fB\fBr\fR\fR
.ad
.RS 5n
Indicates that the process is using the file as its root directory.
.RE

.sp
.ne 2
.na
\fB\fBt\fR\fR
.ad
.RS 5n
Indicates that the process is using the file as its text file.
.RE

.sp
.ne 2
.na
\fB\fBy\fR\fR
.ad
.RS 5n
Indicates that the process is using the file as its controlling terminal.
.RE

.sp
.LP
For block special devices with mounted file systems, all processes using any
file on that device are listed. For all types of files (text files,
executables, directories, devices, and so forth), only the processes using that
file are reported.
.sp
.LP
For all types of devices, \fBfuser\fR also displays any known kernel consumers
that have the device open. Kernel consumers are displayed in one of the
following formats:
.sp
.in +2
.nf
[\fImodule_name\fR]
[\fImodule_name\fR,dev_path=\fIpath\fR]
[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR)]
[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR),dev_path=\fIpath\fR]
.fi
.in -2
.sp

.sp
.LP
If more than one group of files are specified, the options may be respecified
for each additional group of files. A lone dash cancels the options currently
in force.
.sp
.LP
The process IDs are printed as a single line on the standard output, separated
by spaces and terminated with a single new line. All other output is written on
standard error.
.sp
.LP
Any user can run fuser, but only the superuser can terminate another user's
process.
.SH OPTIONS
.sp
.LP
The following options are supported:
.sp
.ne 2
.na
\fB\fB-c\fR\fR
.ad
.RS 10n
Reports on files that are mount points for file systems, and any files within
that mounted file system.
.RE

.sp
.ne 2
.na
\fB\fB-d\fR\fR
.ad
.RS 10n
Report device usage information for all minor nodes bound to the same device
node as the specified minor node. This option does not report file usage for
files within a mounted file system.
.RE

.sp
.ne 2
.na
\fB\fB-f\fR\fR
.ad
.RS 10n
Prints a report for the named file, not for files within a mounted file system.
.RE

.sp
.ne 2
.na
\fB\fB-k\fR\fR
.ad
.RS 10n
Sends the \fBSIGKILL\fR signal to each process. Since this option spawns kills
for each process, the kill messages may not show up immediately (see
\fBkill\fR(2)). No signals will be sent to kernel file consumers.
.RE

.sp
.ne 2
.na
\fB\fB-n\fR\fR
.ad
.RS 10n
Lists only processes with non-blocking mandatory locks on a file.
.RE

.sp
.ne 2
.na
\fB\fB-s\fR \fIsig\fR\fR
.ad
.RS 10n
Sends a signal to each process. The \fIsig\fR option argument specifies one of
the symbolic names defined in the \fB<signal.h>\fR header, or a decimal integer
signal number. If \fIsig\fR is a symbolic name, it is recognized in a
case-independent fashion, without the \fBSIG\fR prefix. The \fB-k\fR option is
equivalent to \fB-s\fR \fBKILL\fR or \fB-s\fR \fB9\fR. No signals will be sent
to kernel file consumers.
.RE

.sp
.ne 2
.na
\fB\fB-u\fR\fR
.ad
.RS 10n
Displays the user login name in parentheses following the process \fBID\fR.
.RE

.SH EXAMPLES
.LP
\fBExample 1 \fRReporting on the Mount Point and Files
.sp
.LP
The following example reports on the mount point and files within the mounted
file system.

.sp
.in +2
.nf
example% \fBfuser -c /export/foo\fR
.fi
.in -2
.sp

.LP
\fBExample 2 \fRRestricting Output when Reporting on the Mount Point and Files
.sp
.LP
The following example reports on the mount point and files within the mounted
file system, but the output is restricted to processes that hold non-blocking
mandatory locks.

.sp
.in +2
.nf
example% \fBfuser -cn /export/foo\fR
.fi
.in -2
.sp

.LP
\fBExample 3 \fRSending SIGTERM to Processes Holding a Non-blocking Mandatory
Lock
.sp
.LP
The following command sends \fBSIGTERM\fR to any processes that hold a
non-blocking mandatory lock on file \fB/export/foo/my_file\fR.

.sp
.in +2
.nf
example% \fBfuser -fn -s term /export/foo/my_file\fR
.fi
.in -2
.sp

.SH ENVIRONMENT VARIABLES
.sp
.LP
See \fBenviron\fR(5) for descriptions of the following environment variables
that affect the execution of \fBfuser\fR: \fBLANG\fR, \fBLC_ALL\fR
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Standard
.TE

.SH SEE ALSO
.sp
.LP
\fBps\fR(1), \fBmount\fR(1M), \fBkill\fR(2), \fBmmap\fR(2), \fBsignal\fR(3C),
\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
.SH NOTES
.sp
.LP
Because \fBfuser\fR works with a snapshot of the system image, it may miss
processes that begin using a file while \fBfuser\fR is running. Also, processes
reported as using a file may have stopped using it while \fBfuser\fR was
running. These factors should discourage the use of the \fB-k\fR option.