简介
lsof(list open files)是一个列出当前系统打开文件的工具。在 Linux 环境中一切皆文件,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议(TCP)和用户数据报协议(UDP)套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过 lsof 工具能够查看这个列表对系统监测以及排错将是很有帮助的。
lsof命令结果各列含义

lsof 输出各列信息的意义如下:
COMMAND:进程的名称;PID:进程标识符;USER:进程所有者;FD:文件描述符,应用程序通过文件描述符识别该文件。每个进程都有自己的文件描述符表,因此FD可能会重名;TYPE:文件类型;DEVICE:指定磁盘的名称;SIZE:文件的大小;NODE:索引节点(文件在磁盘上的标识);NAME:打开文件的确切名称;
查看文件占用状态
列出占用指定文件的进程

列出指定pid的进程占用的文件

列出指定用户打开的文件

列出指定进程名打开的文件

查看网络连接状态
查看IPv4的连接

查看指定IP的连接

-n表示不反解 IP 到域名,直接显示 IP。
查看指定IP及端口的连接

查看指定端口的连接

查看指定协议的连接

评论区