fuser - identify processes using files or sockets
FUSER(1) User Commands FUSER(1)
NAME
fuser - identify processes using files or sockets
SYNOPSIS
fuser [-fuv] [-a|-s] [-4|-6] [-c|-m|-n space ] [-k [-i] [-M] [-w] [-SIGNAL ] ] name ...
fuser -l
fuser -V
DESCRIPTION
fuser displays the PIDs of processes using the specified files or file systems. In the default display mode, each file name is followed by a letter denoting the type of access:
c current directory.
e executable being run.
f open file. f is omitted in default display mode.
F open file for writing. F is omitted in default display mode.
r root directory.
m mmap'ed file or shared library.
fuser returns a non-zero return code if none of the specified files is accessed or in case of a fatal error. If at least one access has been found, fuser returns zero.
In order to look up processes using TCP and UDP sockets, the corresponding name space has to be selected with the -n option. By default fuser will look in both IPv6 and IPv4 sockets. To
change the default, behavior, use the -4 and -6 options. The socket(s) can be specified by the local and remote port, and the remote address. All fields are optional, but commas in front of
missing fields must be present:
[lcl_port][,[rmt_host][,[rmt_port]]]
Either symbolic or numeric values can be used for IP addresses and port numbers.
fuser outputs only the PIDs to stdout, everything else is sent to stderr.
OPTIONS
-a, --all
Show all files specified on the command line. By default, only files that are accessed by at least one process are shown.
-c Same as -m option, used for POSIX compatibility.
-f Silently ignored, used for POSIX compatibility.
-k, --kill
Kill processes accessing the file. Unless changed with -SIGNAL, SIGKILL is sent. An fuser process never kills itself, but may kill other fuser processes. The effective user ID of the
process executing fuser is set to its real user ID before attempting to kill.
-i, --interactive
Ask the user for confirmation before killing a process. This option is silently ignored if -k is not present too.
-l, --list-signals
List all known signal names.
-m NAME, --mount NAME
NAME specifies a file on a mounted file system or a block device that is mounted. All processes accessing files on that file system are listed. If a directory file is specified, it
is automatically changed to NAME/. to use any file system that might be mounted on that directory.
-M --ismountpoint
Request will be fulfilled only if NAME specifies a mountpoint. This is an invaluable seatbelt which prevents you from killing the machine if NAME happens to not be a filesystem.
-w Kill only processes which have write access. This option is silently ignored if -k is not present too.
-n SPACE, --namespace SPACE
Select a different name space. The name spaces file (file names, the default), udp (local UDP ports), and tcp (local TCP ports) are supported. For ports, either the port number or the
symbolic name can be specified. If there is no ambiguity, the shortcut notation name/Ispace (e.g. 80/tcp ) can be used.
-s, --silent
Silent operation. -u and -v are ignored in this mode. -a must not be used with -s.
-SIGNAL
Use the specified signal instead of SIGKILL when killing processes. Signals can be specified either by name (e.g. -HUP) or by number (e.g. -1). This option is silently ignored if the
-k option is not used.
-u, --user
Append the user name of the process owner to each PID.
-v, --verbose
Verbose mode. Processes are shown in a ps-like style. The fields PID, USER and COMMAND are similar to ps. ACCESS shows how the process accesses the file. Verbose mode will also show
when a particular file is being access as a mount point, knfs export or swap file. In this case kernel is shown instead of the PID.
-V, --version
Display version information.
-4, --ipv4
Search only for IPv4 sockets. This option must not be used with the -6 option and only has an effect with the tcp and udp namespaces.
-6, --ipv6
Search only for IPv6 sockets. This option must not be used with the -4 option and only has an effect with the tcp and udp namespaces.
- Reset all options and set the signal back to SIGKILL.
FILES
/proc location of the proc file system
EXAMPLES
fuser -km /home kills all processes accessing the file system /home in any way.
if fuser -s /dev/ttyS1; then :; else something; fi invokes something if no other process is using /dev/ttyS1.
fuser telnet/tcp shows all processes at the (local) TELNET port.
RESTRICTIONS
Processes accessing the same file or file system several times in the same way are only shown once.
If the same object is specified several times on the command line, some of those entries may be ignored.
fuser may only be able to gather partial information unless run with privileges. As a consequence, files opened by processes belonging to other users may not be listed and executables may be
classified as mapped only.
Installing fuser SUID root will avoid problems associated with partial information, but may be undesirable for security and privacy reasons.
udp and tcp name spaces, and UNIX domain sockets can't be searched with kernels older than 1.3.78.
Accesses by the kernel are only shown with the -v option.
The -k option only works on processes. If the user is the kernel, fuser will print an advice, but take no action beyond that.
BUGS
fuser -m /dev/sgX will show (or kill with the -k flag) all processes, even if you don't have that device configured. There may be other devices it does this for too.
fuser cannot report on any processes that it doesn't have permission to look at the file descriptor table for. The most common time this problem occurs is when looking for TCP or UDP sock-
ets when running fuser as a non-root user. In this case fuser will report no access
The mount -m option will match any file within the save device as the specified file, use the -M option as well if you mean to specify only the mount point.
AUTHORS
Werner Almesberger <werner@almesberger.net>
Craig Small <csmall@enc.com.au>
SEE ALSO
kill(1), killall(1), lsof(8), pkill(1), ps(1), kill(2).
Linux 2011-06-19 FUSER(1)
fuser - identify processes using files or sockets的更多相关文章
- 转载 linux umount 时出现device is busy 的处理方法--fuser
http://www.cnblogs.com/spicy/p/6894333.html (原文链接) 当任何目录有 mount, 然后有程序使用/挂在那个目录上的话, 就没有办法 umount 掉, ...
- #linux包之lsof之lsof命令
2015/3/18查漏补缺,反复练习命令,有不明白或疑问的地方直接看man手册页,英文解释的比较清楚 man lsof 已阅 概述 [root@localhost ~]# rpm -qa|grep l ...
- df -h执行卡住不动问题解决【转】
昨天生产环境报日志写不进去了,因此 登陆线上环境后,习惯用df -h命令查看空间使用情况,结果发现该命令执行半天也没有返回. 因此使用mount命令查看该机器上的目录: [conversant@swi ...
- linux shell & bash
shell & bash shell指允许用户通过文本操作计算机的程序. interactive shell:从是否通过标准输入输出与用户进行交互的角度分为交互式shell(interacti ...
- fuser 命令小结
fuser 概述 fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/us ...
- fuser 命令概述
fuser 概述 fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/us ...
- fuser命令找到占用资源的进程
fuser 概述 fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/us ...
- Linux的fuser命令解析
fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/usb1: 1347c ...
- psutil官方文档
psutil documentation¶ Quick links Home page Install Blog Forum Download Development guide What’s new ...
随机推荐
- 将模型储存到本地-FastCoder
// // ViewController.m // 模型转data储存 // // Created by 谭启宏 on 16/3/4. // Copyright © 2016年 tqh. All ri ...
- C++中使用Curl和JsonCpp调用有道翻译API实现在线翻译
使用C++开发一个在线翻译工具,这个想法在我大脑中过了好几遍了,所以就搜了下资料,得知网络上有很多翻译API,这里我选择我平时使用较多的有道翻译API进行在线翻译工具开发的练习.翻译API返回的结果常 ...
- Luogu【P1880】石子合并(环形DP)
先放上luogu的石子合并题目链接 这是一道环形DP题,思想和能量项链很像,在预处理过程中的手法跟乘积最大相像. 用一个m[][]数组来存储石子数量,m[i][j]表示从第 i 堆石子到第 j 堆石子 ...
- 刷题总结——Tree2cycle(hdu4714 树形dp)
题目: A tree with N nodes and N-1 edges is given. To connect or disconnect one edge, we need 1 unit of ...
- zoj 2974 Just Pour the Water矩阵快速幂
Just Pour the Water Time Limit: 2 Seconds Memory Limit: 65536 KB Shirly is a very clever girl. ...
- 【CF713C】Sonya and Problem Wihtout a Legend(离散化,DP)
题意:给你一个数列,对于每个数字你都可以++或者−− 然后花费就是你修改后和原数字的差值,然后问你修改成一个严格递增的,最小花费 思路:很久以前做过一道一模一样的 严格递增很难处理,就转化为非严格递增 ...
- comet realization with ajax&php
1.prepare front-end code, meta content-type cannot be ignored! as to the xhr, status should be 3 < ...
- vue.js源码学习分享(五)
//配置项var config = { /** * Option merge strategies (used in core/util/options)//选项合并策略 */ optionMerge ...
- 小程序-初次进入小程序的授权问题(授权更新后的完整步骤)button主动授权
在此做个笔记 最开始小程序的开发时,信息授权的问题刚完善,后面腾讯就更新了新的授权方式,真心的感到心累. 后来的button,主动授权问题,时间一久就有些忘记了,最近在新开发一个小程序的拆红包活动,需 ...
- react-native初始化项目的时候安装失败,如何解决【摘】
首先初始化项目报错: 解决方法: 将这个版本号改为: 然后将这里: 改为: 版本号相对应 然后便可安装成功! [注:转载:https://blog.csdn.net/wwrzyy/article/ ...