网络管理-lsof 🌐 — 查看打开的文件

作用

lsof(list open files)列出当前系统打开的文件描述符信息。在 Linux 中"一切皆文件",lsof 可查看进程打开了哪些文件、目录、网络连接、设备等,常用于排查文件占用、端口占用问题。

语法

lsof [选项]

用法

lsof 不加参数显示所有打开的文件,信息量极大。常用过滤:-i :端口 查看占用指定端口的进程;-U 查看 UNIX 域套接字;-p 进程号 查看指定进程打开的文件;-c 命令名 查看指定命令打开的文件;+D 目录 查看目录下被打开的文件;-u 用户名 查看指定用户的文件;-n 不解析主机名(加快速度)。lsof -i :80 是最常用的查端口占用方式。

常用参数

参数说明
-i :端口查看端口占用
-UUNIX 域套接字
-p 进程号指定进程
-c 命令指定命令
+D 目录目录下打开的文件
-u 用户指定用户
-n不解析主机名

示例

lsof -i :80                                     # 查看占用 80 端口的进程
lsof -i :22                                     # 查看占用 22 端口的进程
lsof -p 1234                                    # 查看 PID 1234 打开的文件
lsof -u USER                                    # 查看指定用户的打开文件
lsof +D /HOME/USER                              # 查看目录下哪些文件被打开
lsof -c ssh                                     # 查看 ssh 命令打开的文件

来源: 菜鸟教程

🔗 相关文档

网络管理-ss | 网络管理-netstat | 网络管理-tcpdump | 网络管理-ssh