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

使用 lsof 查找打开的文件

 2006-08-26 08:12:16 来源:WEB开发网   
核心提示: 除了显示出这些守护进程正在监听的对象,lsof 还可以发现发生的连接,使用 lsof 查找打开的文件(10),同样是使用 -i 参数,清单 9 显示了搜索与 192.168.1.10 之间的所有连接,并获得关于网络连接的信息,这是一个功能强大的工具,清单 9. 搜索活动的连接# lsof

除了显示出这些守护进程正在监听的对象,lsof 还可以发现发生的连接,同样是使用 -i 参数。清单 9 显示了搜索与 192.168.1.10 之间的所有连接。

清单 9. 搜索活动的连接

# lsof -i @192.168.1.10
COMMAND PID USER  FD  TYPE    DEVICE SIZE/OFF NODE NAME
sshd  1934 root  6u IPv6 0x300046d21c0 0t1303608 TCP sun:ssh->linux:40379
               (ESTABLISHED)
sshd  1937 root  4u IPv6 0x300046d21c0 0t1303608 TCP sun:ssh->linux:40379
               (ESTABLISHED)

在这个示例中,sun 和 linux 之间有两个 IPv6 连接。对其进行更仔细的研究可以看出,这些连接来自于两个不同的进程,但它们却是相同的,这是因为两台主机是相同的,并且端口也是相同的(ssh 和 40379)。这是由于进入主进程的连接分叉出一个处理程序,并将该套接字传递给它。您还可以看到,名为 sun 的计算机正在使用端口 22 (ssh),而 linux 具有端口 40379。这表示,sun 是该连接的接收者,因为它关联于该服务的已知端口。40379 是源或临时端口,并且仅对这个连接有意义。

因为,至少在 UNIX 中,套接字是另一类文件,所以 lsof 可以获得关于这些连接的详细信息,并找出谁对它们负责。

结束语

UNIX 大量使用了文件。作为系统管理员,lsof 允许您对核心内存进行查看,以找出系统当前如何使用这些文件。lsof 最简单的用法可以告诉您哪些进程打开了哪些文件,以及哪些文件由哪些进程打开。在收集关于应用程序工作情况的信息时,或在进行某些可能损坏数据的操作前确保文件未被使用时,这一点特别重要lsof 更高级的用法可以帮助您查找删除的文件,并获得关于网络连接的信息。这是一个功能强大的工具,它几乎可以用于任何地方。

上一页  5 6 7 8 9 10 

Tags:使用 lsof 查找

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