在Linux中,fuser工具可用来查询文件的用户,除此之外,fuser还有很多用途,能够搭配参数使用,下面小编将针对fuser工具的使用方式给大家做个详细介绍,希望对你有所帮助。
lsof也具备类似的功能,它也能够找出正在对指定文件访问的进程,两者的区别是fuser在于它可以一次杀死那些正在访问指定文件的进程。
fuser常用的场合是:
fuser可用于查询文件、目录、socket端口和文件系统的使用进程,并且可以使用fuser关闭进程。
当文件系统umount报device busy时,常用到fuser查询并关闭使用相应文件系统的进程。(在DRBD切换的时候可以用到哦);
使用方式:

基本上使基本上用-v 可以显示大部分内容:

/root 目录下的使用者,进程ID,PID后面的c代表进程的工作目录,后面是具体的命令;
access还有其他选项:
e:该文件为进程的可执行文件;
f:该文件被进程打开,默认f不显示;
F:该文件被进程打开,并写入,默认F不显示;
r:表示该目录为进程的根目录;
m:表示进程使用该文件进行内存映射,或者该文件为共享库文件,被进程映射至内存;
对socket端口使用者的情况进行查询:

查看某文件系统的使用情况:

kill掉对某个文件正在访问的进程:
fuser是对相关进程发送SIGKILL信号。除了发送SIGKILL信号之外,fuser还可以发送以下信号:

fuser -v -k filename;
要结束所有对某文件系统进行访问的进程:
fuser -ck /data (某文件系统挂载的目录);
上面就是Linux使用fuser工具的方法介绍而来,fuser加上-v能够显示进程内容,能够对socket端口使用者的情况进行查询,还能查询文件系统的使用情况等。