查看一个进程打开的文件都有哪些

step 1

pfile pid

step 2

根据 inode number 查找 比如


bash-2.05# pfiles 26053
26053: python
Current rlimit: 256 file descriptors
0: S_IFCHR mode:0620 dev:32,0 ino:3982 uid:0 gid:7 rdev:24,2
O_RDWR|O_NOCTTY|O_LARGEFILE
1: S_IFCHR mode:0620 dev:32,0 ino:3982 uid:0 gid:7 rdev:24,2
O_RDWR|O_NOCTTY|O_LARGEFILE
2: S_IFCHR mode:0620 dev:32,0 ino:3982 uid:0 gid:7 rdev:24,2
O_RDWR|O_NOCTTY|O_LARGEFILE
3: S_IFREG mode:0644 dev:0,2 ino:185403968 uid:2001 gid:101 size:5
O_RDONLY|O_LARGEFILE

bash-2.05# find /tmp -inum 185403968
/tmp/test.txt

查看一个进程打开的文件都有哪些

时间: 2024-10-12 04:35:44

查看一个进程打开的文件都有哪些的相关文章

如何查看一个进程打开哪些fd及对应的文件或套接字操作

/*********************************************************************  * Author  : Samson  * Date    : 06/22/2015  * Test platform:  *              gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2  *              GNU bash, 4.3.11(1)-release (x86_64-pc-linux-gnu)

【讲清楚,说明白!】干货--使用lsof恢复进程打开的文件

目录:(一)lsof恢复文件(二)lsof的其他用法 (一)lsof恢复文件(1.1)如果在系统中有某个进程打开了一个文件,但是这个文件被我们误删除,此时我们希望将误删除的文件恢复.如果某个被误删除的文件所对应的进程没有关,这个文件就可以恢复.(1.2)在Linux中的FD文件描述符与windows中的文件句柄是同样的一个概念,一个进程打开一个文件就会产生相应的文件描述符,如果这个进程将文件关闭了,那么这个文件描述符或文件句柄就会跟着释放掉了.(1.3)我们直接执行lsof命令,可以看到如下的信

s11.1 lsof:查看进程打开的文件

功能说明 lsof 全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件. [语法格式] lsof    [option] lsof    [选项] 参数选项         解释说明 -c<进程名>     显示指定的进程名所打开的文件 -p<进程号>     显示指定的进程号所打开的文件 -i            通过监听指定的协议.端-和主机等信息,显示符合条件的进程

s11.1 查看进程打开的文件

功能说明 lsof 全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件. [语法格式] lsof [option] lsof [选项] 参数选项 解释说明 -c<进程名> 显示指定的进程名所打开的文件 -p<进程号> 显示指定的进程号所打开的文件 -i 通过监听指定的协议.端-和主机等信息,显示符合条件的进程信息 -u 显示指定用户使用的文件 -U 显示所有socket文件

lsof恢复进程打开的文件

工作原理:进程每打开文件都会生成一个文件句柄FD来标识一个文件,进程打开的文件如果没有被释放,可以通过文件句柄FD来恢复删除的文件 注意:适合恢复进程一直在打开一个文件,例如日志文件,如果配置文件进程启动的时候读取马上释放掉该文件的句柄通过这种方式是恢复不了的:同时如果打开的文件被删除掉,同时把服务重启了,服务被重启这个文件句柄也会被释放掉,通过lsof方式也是无法恢复的: 安装:yum install lsof -y 查看打开/var/log/messages文件的进程 这里打开/var/lo

linux 下查看一个进程运行路径

在linux下查看进程大家都会想到用 ps -ef|grep XXX 可是看到的不是全路径,怎么看全路径呢? 每个进程启动之后在 /proc下面有一个于pid对应的路径 例如:ps -ef|grep python 显示:oracle    4431  4366  0 18:56 pts/2    00:00:00 python Server.py 4431就是进程号 到/proc/4431下,ls -l 会看到(需要root权限): 总用量 0 -r--r--r--    1 oracle  

Linux下查看哪个进程对某文件进行了操作

由于工作需要,近日开发了一个server agent,其中有个功能是对/path/to/file文件进行写入 在程序部署完成后,/path/to/file文件中内容刚开始是符合预期的 但是过了不到一分钟,发现/path/to/file已与预期不符,走查代码后确认无误,怀疑是有其他后台进程对此文件进行了修改,所以要查到这个元凶巨恶 起初,尝试使用lsof命令,具体说来,清空/path/to/file文件内容,然后写一个无限循环调用lsof /path/to/file,运行后发现无任何效果,但/pa

查询进程打开的文件[转]

fuser 有的时候我想要知道我的程序到底在这次启动过程中开启了多少文件,可以利用 fuser 来观察啦! 举例来说,你如果卸载时发现系统通知:『 device is busy 』,那表示这个文件系统正在忙碌中, 表示有某支程序有利用到该文件系统啦!那么你就可以利用 fuser 来追踪罗!fuser 语法有点像这样: [[email protected] ~]# fuser [-umv] [-k [i] [-signal]] file/dir 选项与参数: -u :除了程序的 PID 之外,同时

linux 下查看一个进程执行路径

在linux下查看进程大家都会想到用 ps -ef|grep XXX 但是看到的不是全路径.怎么看全路径呢? 每一个进程启动之后在 /proc以下有一个于pid相应的路径 比如:ps -ef|grep python 显示:oracle ? ?4431 ?4366 ?0 18:56 pts/2 ? ?00:00:00 python Server.py 4431就是进程号 到/proc/4431下.ls -l 会看到(须要root权限): 总用量 0 -r--r--r-- ? ?1 oracle ?