Ubuntu lsof命令详解(手把手教你列出打开文件)

来源:这里教程网 时间:2026-03-02 11:02:17 作者:

在 Linux 系统中,尤其是 Ubuntu 环境下,lsof(List Open Files)是一个非常实用的命令行工具。它可以帮你列出打开文件,包括普通文件、目录、网络连接、设备等。本文将为你详细讲解 Ubuntu lsof命令 的基本用法和常见场景,即使你是 Linux 新手,也能轻松上手!

什么是 lsof?

在 Linux 中,“一切皆文件”。这意味着不仅文本、图片是文件,连网络套接字、设备、管道等也被视为“文件”。

lsof
命令的作用就是列出当前系统中被进程打开的所有“文件”。

安装 lsof(如果尚未安装)

大多数 Ubuntu 系统默认已安装

lsof
。如果没有,可以通过以下命令安装:

sudo apt updatesudo apt install lsof

基础用法:列出所有打开的文件

直接运行

lsof
命令会输出大量信息,包括进程 ID(PID)、用户、文件描述符、文件类型和路径等。

lsof

⚠️ 注意:该命令可能需要较长时间执行,并输出成千上万行内容。建议结合

grep
或分页查看(如
lsof | less
)。

常用实用技巧

1. 查看某个用户打开的文件

lsof -u username

2. 查看某个进程打开的文件

lsof -p 1234

其中

1234
是进程的 PID。你可以通过
ps aux | grep 进程名
找到 PID。

3. 查看某个文件被哪些进程占用

lsof /path/to/file.txt

这在你无法删除或修改某个文件时特别有用——可能是其他进程正在使用它。

4. 查看网络连接(TCP/UDP)

lsof -i

这会列出所有网络相关的打开文件(即网络连接)。你可以进一步筛选端口或协议:

lsof -i :80 # 查看使用 80 端口的进程lsof -i TCP # 只看 TCP 连接

为什么 lsof 对系统管理很重要?

掌握 Ubuntu lsof命令 能帮助你快速诊断以下问题:

为什么磁盘空间没释放?(文件被删除但进程仍在写入) 哪个程序占用了特定端口? 某个配置文件正被哪个服务使用? 排查异常网络连接或可疑进程

小结

lsof
是 Linux 系统管理员和开发者的得力助手。通过本教程,你应该已经掌握了如何使用 lsof 使用教程 中的核心命令来查看进程打开文件。记住,善用
man lsof
查看完整手册,能让你更高效地解决问题。

现在就打开你的终端,试试这些命令吧!如果你在使用过程中遇到问题,欢迎在评论区留言交流。

相关推荐