WEB开发网
开发学院操作系统Linux/Unix 使用 lsof 查找打开的文件 阅读

使用 lsof 查找打开的文件

 2006-08-26 08:12:16 来源:WEB开发网   
核心提示: 清单 2. 带有 PID 筛选器并进行 txt 文件描述符筛选的 lsof 输出sh-3.00# lsof -a -p 605 -d ^txtCOMMANDPID USER FD TYPEDEVICE SIZE/OFF NODE NAMEsendmail 605 rootcwd VDIR1

清单 2. 带有 PID 筛选器并进行 txt 文件描述符筛选的 lsof 输出

sh-3.00# lsof -a -p 605 -d ^txt
COMMAND PID USER  FD  TYPE DEVICE SIZE/OFF   NODE NAME
sendmail 605 root cwd  VDIR 136,8   1024  23554 /var/spool/mqueue
sendmail 605 root  0r VCHR 13,2      6815752 /devices/pseudo/mm@0:null
sendmail 605 root  1w VCHR 13,2      6815752 /devices/pseudo/mm@0:null
sendmail 605 root  2w VCHR 13,2      6815752 /devices/pseudo/mm@0:null
sendmail 605 root  3r DOOR       0t0    58
    /var/run/name_service_door(door to nscd[81]) (FA:->0x30002b156c0)
sendmail 605 root  4w VCHR 21,0      11010052
            /devices/pseudo/log@0:conslog->LOG
sendmail 605 root  5u IPv4 0x300010ea640   0t0   TCP *:smtp (LISTEN)
sendmail 605 root  6u IPv6 0x3000431c180   0t0   TCP *:smtp (LISTEN)
sendmail 605 root  7u IPv4 0x300046d39c0   0t0   TCP *:submission (LISTEN)
sendmail 605 root  8wW VREG     281,3    32 8778600 /var/run/sendmail.pid

清单 2 为 lsof 指定了三个参数。第一个是 -a,它表示当所有的参数都为真时,才显示这个文件。第二个参数是 -p 605,它限制仅输出 PID 为 605 的进程,可以通过 ps 命令获取这个信息。最后一个参数 -d ^txt,它表示筛选出其中 txt 类型的记录(脱字符号 [^] 表示排除)。

清单 2 的输出提供了关于进程行为的信息。如 cwd 行所示,该应用程序的工作目录为 /var/spool/mqueue。文件描述符 0、1 和 2 分配给了 /dev/null(Solaris 大量使用符号链接,所以这里显示了相应的伪设备)。FD 3 是一个 Solaris 门(高速远程过程调用 (RPC) 接口),以只读模式打开。FD 4 中的内容比较有趣,因为它是一个字符设备的只读句柄,实质上是 /dev/log。从这个文件中,您可以收集该应用程序向 UNIX syslog 守护进程进行的记录,所以 /etc/syslog.conf 规定了日志文件的位置。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 lsof 查找

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接