查看进程打开的文件lsof
lsof,全称List Open Files,是一个在Linux系统中查看被进程打开文件信息的命令。它可以列出包括普通文件、目录、特殊的块文件、管道、socket套接字、设备、Unix域套接字等在内的所有被进程打开的文件的信息。
在linux系统中,所有程序都可以被看做是文件。
lsof命令的常用选项包括:
- -a:表示显示所有的文件类型;
- -u:后面可以跟用户名,表示查看该用户打开的文件;
- -p:后面可以跟进程号,表示查看该进程打开的文件;
- -n:表示不解析服务名,以数字形式的端口号显示;
- -i:后面可以跟网络接口名,表示查看该网络接口的状态;
- -t:后面可以跟文件类型,表示只显示该类型的文件。
查看被掐用户打开的文件sudo lsof -u root -a
除了lsop命令外,还可以使用
top
监控命令查看进程。
套接字统计ss
ss是Socket Statistics的缩写。套接字一般和网络相关,该命令又称为网络统计工具。用于显示系统中的网络连接、套接字统计信息等。它可以显示TCP和UDP协议的连接状态、本地和远程地址、端口号等信息。
常用的ss命令选项包括:
- -t:仅显示TCP连接;
- -u:仅显示UDP连接;
- -a:显示所有连接(包括监听套接字);
- -n:不解析服务名称,直接显示数字形式的端口号;
- -l:仅显示监听套接字;
- -p:显示进程标识符和程序名称,需要root权限。