fuser 可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息. 

fuser显示使用指定文件或者文件系统的进程ID.默认情况下每个文件名后面跟一个字母表示访问类型。 

访问类型如下: 

c 代表当前目录 

e 将此文件作为程序的可执行对象使用 

f 打开的文件。默认不显示。 

F 打开的文件,用于写操作。默认不显示。 

r 根目录。 

m 映射文件或者共享库。





[root@limt01 dev]# fuser -h

Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...

             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...

       fuser -l

       fuser -V

Show which processes use the named files, sockets, or filesystems.

    -a        display unused files too

    -c        mounted FS

    -f        silently ignored (for POSIX compatibility)

    -i        ask before killing (ignored without -k)

    -k        kill processes accessing the named file

    -l        list available signal names

    -m        show all processes using the named filesystems

    -n SPACE  search in this name space (file, udp, or tcp)

    -s        silent operation

    -SIGNAL   send this signal instead of SIGKILL

    -u        display user IDs

    -v        verbose output

    -V        display version information

    -4        search IPv4 sockets only

    -6        search IPv6 sockets only

    -         reset options

  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]





常用选项

-a 显示所有命令行中指定的文件,默认情况下被访问的文件才会被显示。 

-c 和-m一样,用于POSIX兼容。 

-k 杀掉访问文件的进程。如果没有指定-signal就会发送SIGKILL信号。 

-i 杀掉进程之前询问用户,如果没有-k这个选项会被忽略。 

-l 列出所有已知的信号名称。 

-m name 指定一个挂载文件系统上的文件或者被挂载的块设备(名称name)。这样所有访问这个文件或者文件系统的进程都会被列出来。如果指定的是一个目录会自动转换成"name/",并使用所有挂载在那个目录下面的文件系统。 

-n space 指定一个不同的命名空间(space).这里支持不同的空间文件(文件名,此处默认)、tcp(本地tcp端口)、udp(本地udp端口)。对于端口, 可以指定端口号或者名称,如果不会引起歧义那么可以使用简单表示的形式,例如:name/space (即形如:80/tcp之类的表示)。 

-s 静默模式,这时候-u,-v会被忽略。-a不能和-s一起使用。 

-signal 使用指定的信号,而不是用SIGKILL来杀掉进程。可以通过名称或者号码来表示信号(例如-HUP,-1),这个选项要和-k一起使用,否则会被忽略。 

-u 在每个PID后面添加进程拥有者的用户名称。 

-v 详细模式。输出似ps命令的输出,包含PID,USER,COMMAND等许多域,如果是内核访问的那么PID为kernel. -V 输出版本号。 

-4 使用IPV4套接字,不能和-6一起应用,只在-n的tcp和udp的命名存在时不被忽略。 

-6 使用IPV6套接字,不能和-4一起应用,只在-n的tcp和udp的命名存在时不被忽略。 

- 重置所有的选项,把信号设置为SIGKILL.





[root@limt01 dev]# fuser  -m /home/limt/123.txt 

/home/limt/123.txt:   4782c  4812c

PID后跟的字符说明了进程以何种方式与该目录/文件关联,有以下关联方式:

  c  指示进程的工作目录

  e  指示该文件为进程的可执行文件(即进程由该文件拉起)

  f  指示该文件被进程打开,默认情况下f字符不显示

  F  指示该文件被进程打开进行写入,默认情况下F字符不显示

  r  指示该目录为进程的根目录

  m  指示进程使用该文件进行内存映射,抑或该文件为共享库文件,被进程映射进内存





1 查看某个文件或者设备被那个进程使用

[root@limt01 dev]# fuser /var/log/messages 

/var/log/messages:    1868

[root@limt01 dev]# ps -ef|grep 1868

root      1868     1  0 00:26 ?        00:00:00 /sbin/rsyslogd -i /var/run/syslogd.pid -c 5

root      4407  4371  0 08:31 pts/1    00:00:00 grep 1868





2 查看端口被那个进程打开

[root@limt01 dev]# fuser -4 -n tcp 22

22/tcp:               2317

[root@limt01 dev]# ps -ef|grep 2317

root      2317     1  0 00:26 ?        00:00:00 /usr/sbin/sshd





3 加v参数查看文件被那个进程使用

[root@limt01 dev]# fuser -v /home/limt/123.txt 

                     用户     进程号 权限   命令

/home/limt/123.txt:  limt       4623 f.... less





4 杀掉打开子文件或者设备的进程

[root@limt01 dev]# fuser -v /home/limt/123.txt 

                     用户     进程号 权限   命令

/home/limt/123.txt:  limt       4745 f.... less

[root@limt01 dev]# 

[root@limt01 dev]# 

[root@limt01 dev]# fuser -km /home/limt/123.txt 

/home/limt/123.txt:   4666c  4745c

[root@limt01 dev]# fuser -v /home/limt/123.txt 

[root@limt01 dev]#

fuser 命令的介绍的更多相关文章

  1. linux配置网卡IP地址命令详细介绍及一些常用网络配置命令

    linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...

  2. Linux的简单介绍和常用命令的介绍

    Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...

  3. fuser 命令小结

    fuser 概述 fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/us ...

  4. #linux包之psmisc之fuser命令

    概述 [root@localhost ~]# rpm -qf /sbin/fuserpsmisc-22.6-15.el6_0.1.x86_64 先说 fuser的作用,fuser能识别出正在对某个文件 ...

  5. fuser 命令概述

    fuser 概述 fuser命令是用来显示所有正在使用着指定的file, file system 或者 sockets的进程信息. 例一: #fuser –m –u /mnt/usb1 /mnt/us ...

  6. .bat批处理命令的介绍

    HUC = = D组 http://www.cnhonkerarmy.com/ 63707869 =====================================开始============ ...

  7. fuser命令使用心得

    fuser命令可用于查看正使用指定file, file system, socket port的进程信息.使用-k参数可将这些进程杀掉,-i则在杀掉进程前给出提示 例子: [root@bogon ~] ...

  8. 浅谈Windows环境下DOS及MS-DOS以及常见一些命令的介绍

    浅谈Windows环境下DOS及MS-DOS以及常见一些命令的介绍 前记 自己是搞编程的,首先我是一个菜鸟,接触计算机这么久了,感觉很多计算机方面的技术和知识朦朦胧胧.模模糊糊,貌似有些贻笑大方了:所 ...

  9. yum 安装fuser命令

    yum install -y psmisc 转自:https://www.cnblogs.com/saneri/p/5465718.html 有时候我们需要umount某个挂载目录时会遇到如下问题: ...

随机推荐

  1. Ubuntu16.04 + Win 10 双系统 时间同步,启动项顺序,NumLock指示灯常亮

    1. Ubuntu & win10 双系统时间同步: 先在ubuntu下更新一下时间,确保时间无误: sudo apt-get install ntpdate sudo ntpdate tim ...

  2. Window Server 2003(IIS6) 安装.net4.0遇到的问题总结

    1.Window server 2003系统原本就装了.net1.0..net2.0 ,安装.net 4.0之前,系统已经发不了一些网站,这个时候,我安装.net 4.0返现程序不能访问了,提示ser ...

  3. GMap.Net开发之技巧小结

    1.在GMap地图上,如果要让添加的图标(Marker)有个高亮(highlight)的效果,可以在MouseOver到Marker的时候设置Marker外观效果. 如果要让图标有个报警闪烁的效果,可 ...

  4. Convert Object to XML using LINQ

    Convert Object to XML using LINQ. Also the object contains other object list. Following is the Class ...

  5. ios 时间和毫秒数转换

    01-时间和毫秒数的相互转换 //获取毫秒数的时间戳 long inter = [[NSDate date] timeIntervalSince1970]*1000; NSLog(@"%ld ...

  6. LoadRunner关联之学习笔记

    去银行办业务,进银行的门,大堂经理给你一张业务号,拿着这张业务号,去柜台办理业务.--录制下来 第二天又去银行,还是拿着这张业务号,去柜台办理业务,柜员就不理你了,因为这张业务号是昨天的.--回放过程 ...

  7. 【SQL 数据库】将一张数据表信息复制到另一张数据表

    一.MySQL数据库 1.如果目标表存在 INSERT INTO 目标表  SELECT  * FROM 源表; 2.如果目标表不存在 CREATE TABLE 目标表 SELECT * FROM   ...

  8. windows mysql 自动备份的几种方法

    转自:http://www.cnblogs.com/liongis/archive/2013/03/12/2956573.html 1.复制date文件夹备份===================== ...

  9. Android 自定义实现switch开关按钮

    前几天在看蘑菇街上有个开关按钮: 就在想是怎样实现的,于是反编译了它的源码,但是这时得到了下面的几张图片: 图片对应的名称: 无色长条:switch_frame; 白色圆点:switch_btn_pr ...

  10. x264源代码 概述 框架分析 架构分析

    函数背景色 函数在图中以方框的形式表现出来.不同的背景色标志了该函数不同的作用: 白色背景的函数:不加区分的普通内部函数. 浅红背景的函数:libx264类库的接口函数(API). 粉红色背景函数:滤 ...