在Linux上使用fuser工具的方法

时间:2015-05-28188举报小编:123

    大家都知道Linux中,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端口使用者的情况进行查询,还能查询文件系统的使用情况等。