什么是Fuser命令?
fuser命令是一个非常聪明的unix实用程序,用于查找正在使用某个文件、目录或socket的进程。 它还提供有关拥有该进程的用户和访问类型的信息。。fuser工具显示了使用指定文件或文件系统的每个进程的进程ID(PID)。
安装
如果你的精简版运行fuser提示如下信息:
-bash: fuser: command not found
请执行如下命令安装:
[winbert@winbert-server ~]$ sudo yum -y install psmisc
如何使用fuser命令?
man命令可用于查看任何命令的帮助手册,但是学习新知识(尤其是linux命令)的最佳方法是通过阅读真实的示例,并且不断地在终端中键入命令。 在终端中运行以下命令,以获取有关fuser实用程序的使用选项的信息。
[winbert@winbert-server ~]$ fuser No process specification given Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] NAME... fuser -l fuser -V Show which processes use the named files, sockets, or filesystems. -a,--all display unused files too -i,--interactive ask before killing (ignored without -k) -k,--kill kill processes accessing the named file -l,--list-signals list available signal names -m,--mount show all processes using the named filesystems or block device -M,--ismountpoint fulfill request>如何查看使用某个目录的进程fuser序可以与
-v
选项一起使用,该选项以详细模式运行该工具。 verbose选项用于在计算机屏幕上生成详细输出,因此用户可以实时查看实用程序正在执行的操作。[winbert@winbert-server ~]$ fuser -v . USER PID ACCESS COMMAND /home/winbert: winbert 1435 ..c.. bash上面的输出显示,以详细模式运行时,fuser会提供有关
USER
,PID
,ACCESS
和COMMAND
的信息。ACCESS
下的c
字符表示访问类型,表示“当前目录”。 访问类型很多,例如e(正在运行的可执行文件),r(根目录),f(打开文件。在默认显示模式下省略f),F(用于写入的打开文件,在默认显示模式下省略F)和 m(mmap文件或共享库)。查看使用你tcp或udp套接字的进程?
有时您需要使用TCP和UDP套接字查找进程。 为了查找这些进程,需要使用
-n
选项。-n
选项用于选择相应的名称空间。[root@huidukongjian-h4 docker]# fuser -v -n tcp 80 USER PID ACCESS COMMAND 80/tcp: root 27411 F.... docker-proxy默认情况下,fuser将同时在IPv6和IPv4套接字中查找,但是可以使用
-4
和-6
选项更改默认选项。-4
选项代表IPv4
,-6
选项代表IPv6
。 请注意,fuser
仅将PID输出到stdout,其他所有内容都发送到stderr。
fuser -v -n tcp 80
命令的结果显示,使用docker
的进程的进程ID为27411,而用于启动该进程的命令为docker-proxy
。 进程ID(PID)可以以多种方式使用,其中之一是进程终止。 与PID一起使用时,kill命令根据该进程ID终止进程。fuser
还可用于终止访问特定文件的进程。 在以下命令中,-k
选项用于终止正在使用在端口123
上运行的tcp
侦听器的进程。为确保用户不会杀死错误的进程,使用-i
选项询问用户是否 在终止进程之前进行确认。fuser -k 123/tcp
使用带有
-i
选项的fuser -k
命令在终止进程之前要求用户进行确认。 用户可以用y
回答“是”,或者用N
回答不杀死进程。fuser -i -k 123/tcp 123/tcp: 12216 Kill process 12216 ? (y/N) Use The -6 Option To Look For IPv6 Sockets.以下命令以详细模式使用fuser,并尝试查找在端口123上运行的IPv6套接字。
fuser -v -n tcp -6 123
查找占用某个文件系统的进程
-m
选项可与fuser
命令一起使用,以查找访问文件文件系统上文件的进程。 此选项需要文件名作为输入参数。-m
选项非常有用,尤其是当用于发现正在访问文件系统的进程并标识要杀死的进程时。Linux系统使用Fuser命令的方法
扫一扫手机访问
