Purpose
Identifies processes using a file or file structure.
Syntax
fuser [[-c | -f ][-x ] |-d ] [ -k | -K { SignalNumber | SignalName }] [ -u ] [ -V ]File ...
Description
The fuser command lists the process numbers of local processes that use the local or remote files specified by the File parameter. For block special devices, the command lists the processes that use any file on that device.
Each process number is followed by a letter indicating how the process uses the file:
Item | Description |
---|---|
c | Uses the file as the current directory. |
e | Uses the file as a program's executable object. |
r | Uses the file as the root directory. |
s | Uses the file as a shared library (or other loadable object). |
The process numbers are written to standard output in a line with spaces
between process numbers. A new line character is written to standard
error after the last output for each file operand. All other output is
written to standard error.
The fuser command will not detect processes that
have mmap regions where that associated file descriptor has since been
closed. Also, processes using FIFOs (named pipes) will not be detected
until the FIFO is fully opened. For example, a process waiting for an
open system call to complete will not be seen by the fuser command.
Flags
Item | Description |
---|---|
-c | Reports on any open files in the file system containing File. |
-d | Reports on any open files which have been unlinked (deleted) from the file system containingFile. When used in conjunction with the -V flag, it also reports the inode number and size of the deleted file. |
-f | Reports on open instances of File only. |
-K SignalNumber | SignalName | Sends the specified signal to each local process. Only the root user can kill a process of another user. Signal can be specified as either a SignalName, such as KILL for the SIGKILL signal or a SignalNumber, such as 9. Valid values for SignalName are those which are displayed by the kill -l command. |
-k | Sends the SIGKILL signal to each local process. Only the root user can kill a process of another user.
Note: fuser -k or -K might not be able to detect and kill new processes that are created immediately after the program starts to run.
|
-u | Provides the login name for local processes in parentheses after the process number. |
-V | Provides verbose output. |
-x | Used in conjunction with -c or -f, reports on executable and loadable objects in addition to the standard fuser output. |
Security
Attention RBAC users and Trusted AIX users: This
command can perform privileged operations. Only privileged users can
run privileged operations. For more information about authorizations and
privileges, see Privileged Command Database in AIX® Version 7.1 Security. For a list of privileges and the authorizations associated with this command, see the lssecattr command or the getcmdattr subcommand.
Examples
- To list the process numbers of local processes using the /etc/passwd file, enter:
fuser /etc/passwd
- To list the process numbers and user login names of processes using the /etc/filesystems file, enter:
fuser -u /etc/filesystems
- To terminate all of the processes using a given file system, enter:
orfuser -k -x -u -c /dev/hd1
fuser -kxuc /home
Either command lists the process number and user name, and then terminates each process that is using the /dev/hd1 (/home) file system. Only the root user can terminate processes that belong to another user. You might want to use this command if you are trying to unmount the /dev/hd1 file system and a process that is accessing the /dev/hd1 file system prevents this. - To list all processes that are using a file which has been deleted from a given file system, enter:
fuser -d /usr
Files
Item | Description |
---|---|
/dev/kmem | Used for the system image. |
/dev/mem | Also used for the system image. |
No comments:
Post a Comment