linux中如何查看文件被哪些进程使用

linux中如何查看文件被哪些进程使用

fuser -m <path|filename>

lsof -p <pid>

1、查看文件被哪些进程占用:

fuse:

在 Linux 中,fuser 是一个用于查找和终止正在使用指定文件或文件系统的进程的命令行工具。

版本不同,可能命令行稍有差异。

嵌入式终端里的:

image-20231225160253015

这里查看目录或文件被哪些进程占用可以加 -m参数:

image-20231225160314745

打印出来的数字,就是对应的进程号,通过ps就可以查到对应的进程名。

2、查看一个进程使用了哪些文件

方法一:

直接到/proc/xx/fd 目录下,查看:

image-20231225160352143

但是这种方法,无法看应用使用了哪些库,及库对应的真实路径。

方法二:

使用lsof工具,可以列出较为详细的文件使用列表,可以看到对应的进程使用了哪些库文件,及操作了哪些文件,较为详细。

如果,使用了LD_LIBRARY_PATH,替换还原有库进行调试,就可以用这个命令看,使用的库是不是指向了LD_LIBRARY_PATH定义的路径。

lsof -p <pid>

image-20231225160440023

posted @ 2023-12-25 16:07  寻梦99  阅读(3841)  评论(0)    收藏  举报