Linux下怎么查看某个目录正在被哪个程序使用?

我做线上程序清理,但是有个看起来像存放数据的目录,但是我不知道,怎么定位这个目录正在被哪个程序使用,有什么办法可以知道吗,在Centos6.8下?
已邀请:

采菊篱下 - 无分享不快乐 助力技术开源分享 运维一枚

赞同来自:

我了解的可以利用lsof命令:
[root@labnode1 ~]# lsof |more
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init 1 root cwd DIR 252,1 4096 2 /
init 1 root rtd DIR 252,1 4096 2 /
init 1 root txt REG 252,1 150352 655385 /sbin/init
init 1 root mem REG 252,1 65960 786511 /lib64/libnss_files-2.12.so
init 1 root mem REG 252,1 1923352 786447 /lib64/libc-2.12.so
init 1 root mem REG 252,1 90880 786452 /lib64/libgcc_s-4.4.7-20120601.so.1
init 1 root mem REG 252,1 43944 786555 /lib64/librt-2.12.so
init 1 root mem REG 252,1 142688 786471 /lib64/libpthread-2.12.so
init 1 root mem REG 252,1 265728 786527 /lib64/libdbus-1.so.3.4.0
init 1 root mem REG 252,1 39896 786543 /lib64/libnih-dbus.so.1.0.0
init 1 root mem REG 252,1 101920 786545 /lib64/libnih.so.1.0.0
init 1 root mem REG 252,1 154664 786437 /lib64/ld-2.12.so
如上可以看出,losf第二列是程序的pid,比如你的文件夹是  javadata   那可以利用:
# ps aux |grep `lsof |grep -i javadata |awk '{print $2}'`
来查看这个文件夹是被哪个程序正在使用的,文件同理。

要回复问题请先登录注册