Linux命令之fuser命令

fuser命令在Linux中用于查找使用特定文件或端口的进程,并可选地终止这些进程。它可以显示进程ID、用户以及进程与文件的交互方式。示例包括列出使用文件的进程、显示进程详细信息、发送信号以及终止进程等。使用时需谨慎,特别是涉及文件系统的操作,因为可能会导致数据丢失。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、fuser命令简介

  fuser用于通过文件或端口号识别进程。fuser命令列出了本地进程的进程号,那些本地进程使用file,参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使用该设备上任何文件的进程。每个进程号后面都跟随一个字母,该字母指示进程如何使用文件。

  • c:指示进程的工作目录。
  • e:指示该文件为进程的可执行文件(即进程由该文件拉起)。
  • f:指示该文件被进程打开,默认情况下f字符不显示。
  • F:指示该文件被进程打开进行写入,默认情况下F字符不显示。
  • r:指示该目录为进程的根目录。
  • m:指示进程使用该文件进行内存映射,抑或该文件为共享库文件,被进程映射进内存。

二、使用示例

1、列出使用某文件的进程号

[root@test1 ansible]# fuser /etc/passwd
/etc/passwd: 6774

2、列出使用某文件的进程号和用户名

[root@test1 ansible]# fuser -u /home/wuhs
/home/wuhs: 78216c(wuhs)

3、终止给定文件的所有进程

[root@test1 ~]# fuser -uk /home/wuhs/
/home/wuhs: 7034c(root) 7194c(root)
[root@test1 ~]# ps -ef |grep 7034
root 7234 6993 0 15:20 pts/0 00:00:00 grep --color=auto 7034

4、列出指定端口的进程号

[root@test1 ~]# fuser -n tcp 8080
8080/tcp: 7559

5、查看fuser版本

[wuhs@test1 apache-tomcat-9.0.44]$ fuser -V
fuser (PSmisc) 22.20
Copyright © 1993-2010 Werner Almesberger and Craig Small

PSmisc comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under
the terms of the GNU General Public License.
For more information about these matters, see the files named COPYING.

6、列出所有已知信号

[wuhs@test1 apache-tomcat-9.0.44]$ fuser -l
HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM
STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS
UNUSED

7、终止使用给定文件系统的所有进程

[root@test1 ~]# fuser -kuc /home/
此命令非常危险,慎用!!!

8、终止进程前进行确认

[root@test1 ~]# fuser -u -k -i /home/wuhs/apache-tomcat-9.0.44/logs/catalina.out
/home/wuhs/apache-tomcat-9.0.44/logs/catalina.out: 7219(wuhs)
Kill process 7219 ? (y/N) y

9、发送指定信号并显示详细信息

发送HUP挂起信号,并使用-v显示详细信息
[root@test1 ~]# fuser -k -SIGHUP -v /home/wuhs/apache-tomcat-9.0.44/logs/catalina.out
USER PID ACCESS COMMAND
/home/wuhs/apache-tomcat-9.0.44/logs/catalina.out:
wuhs 7259 f… tail
在这里插入图片描述

三、使用语法及参数说明

1、使用语法

用法1:fuser [参数选项] 文件
用法2:fuser -l|-V
其中文件可以是文件名或者TCP、UDP端口号。

2、参数说明

参数参数说明
-a,–all显示命令行中指定的所有文件;
-i,–interactive杀死进程前需要用户进行确认;
-k,–kill杀死访问指定文件的所有进程;
-l,–list-signals列出所有已知信号名;
-m,–mount指定一个被加载的文件系统或一个被加载的块设备;
-M,–ismountpoint仅当名称为挂载点时满足请求
-n,–namespace SPACE选择不同的名称空间;
-s,–silent保持静默
-SIGNAL仅发送信号
-u,–user在每个进程后显示所属的用户名。
-v,–verbose输出详细信息
-w,–writeonly仅终止具有写访问权限的进程
-V,–version显示命令软件版本信息
-4,–ipv4只搜索IPV4套接字
-6,–ipv6只搜索IPV4套接字
-重置选项

3、命令安装

[root@s186 bin]# yum install psmisc -y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恒悦sunsite

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值