lsof
lsof(list open files)是一个列出当前系统打开文件的工具
lsof语法格式:
lsof [options] filename
lsof常用命令:
lsof -p pid 列出pid进程的所有打开的文件
lsof -c filename 列出filename程序名所打开的文件
lsof -i 列出所有网络连接
lsof -i:port 查看端口运行情况,可看具体是哪个进程在监听等
lsof -u 列出某个用户打开的所有文件
lsof输出信息:
COMMAND:进程的名称 PID:进程标识符
USER:进程所有者
FD:文件描述符,应用程序通过文件描述符识别该文件,如cwd、txt等
TYPE:文件类型,如DIR、REG等
DEVICE:指定磁盘的名称
SIZE:文件的大小
NODE:索引节点(文件在磁盘上的标识)
NAME:打开文件的确切名称
应用:
使用lsof应注意用户权限
lsof | grep del 可以定位哪些程序没有释放已经删除的文件的句柄
文件被rm掉,进程仍在使用,使用lsof命令能恢复删除的文件
/proc/pid/fd/xxx