Linux系统诊断神器:lsof用法学起来!

如题所述

lsof(list open files)是一个用于查看当前系统文件的工具。在Linux环境下,所有事物均以文件的形式存在,用户通过文件不仅可访问常规数据,还能访问网络连接和硬件,如TCP和UDP套接字等。系统为每个应用程序分配文件描述符,提供大量关于该应用的信息。以下为lsof的关键用法:



命令参数:



    -a:列出当前存在的进程;
    -c:指定进程所打开的文件;
    -g:列出GID号进程详情;
    -d:列出占用特定文件号的进程;
    +d:列出目录下被打开的文件;
    +D:递归列出目录下被打开的文件;
    -n:列出使用NFS的文件;
    -i:指定条件列出进程;
    -p:指定进程号所打开的文件;
    -u:列出UID号进程详情;
    -h:显示帮助信息;
    -v:显示版本信息。


实例讲解:



    命令输出各列信息包含:COMMAND(进程名称)、PID(进程标识符)、PPID(父进程标识符)、USER(进程所有者)、PGID(进程所属组)、FD(文件描述符)等。
    文件描述符列表包括:cwd(当前工作目录)、txt(程序代码)、lnn(库引用)、er(文件描述符错误信息)、jld(jail目录)、ltx(共享库文本)、mxx(内存映射类型)、m86(DOS合并映射文件)、mem(内存映射文件)、mmap(内存映射设备)、pd(父目录)、rtd(根目录)、tr(内核跟踪文件)、v86(VP/ix映射文件)、0(标准输出)、1(标准输入)、2(标准错误)。
    文件状态模式指示文件的读写模式(u、r、w)、锁定状态(-、空格)以及相关锁类型(N、r、R、w、W、u、U、x、X、space)。
    文件类型表示目录(DIR)、字符类型(CHR)、块设备(BLK)、UNIX域套接字(UNIX)、先进先出队列(FIFO)、IPv4套接字(IPv4)、指定磁盘名称(DEVICE)、文件大小(SIZE)、索引节点(NODE)、文件名称(NAME)。


可打开文件:



    普通文件、目录、网络文件系统文件、字符或设备文件、共享库文件、管道、命名管道、符号链接、网络文件(NFS文件、网络socket、unix域名socket)及其他文件类型。


常规用法:



    查找应用程序打开的文件名称和数量,系统管理员可追踪特定应用程序的日志记录位置或跟踪问题。
    查看进程篇:指定进程号查看该进程打开的文件;查看文件篇:指定程序查看其打开的文件;查看网络篇:查看所有或指定IP的网络连接;综合篇:结合参数查看特定进程的网络连接及状态。


恢复被删除的日志:



    Linux日志默认保存在/var/log下,被入侵者删除日志后,使用lsof命令可查找使用文件的进程PID和文件描述符,进而恢复被删除的日志。


总结:


lsof作为Linux系统诊断工具,允许用户查看核心内存使用情况,获取系统如何使用文件的详细信息。通过简单和高级用法,用户可以收集关于应用程序工作情况的信息,以及在可能损害数据的操作前确保文件未被使用。lsof在查找删除的文件、获取网络连接信息方面表现突出,是功能强大的系统工具。

温馨提示:内容为网友见解,仅供参考
无其他回答

Linux系统诊断神器:lsof用法学起来!
lsof(list open files)是一个用于查看当前系统文件的工具。在Linux环境下,所有事物均以文件的形式存在,用户通过文件不仅可访问常规数据,还能访问网络连接和硬件,如TCP和UDP套接字等。系统为每个应用程序分配文件描述符,提供大量关于该应用的信息。以下为lsof的关键用法:命令参数:-a:列出当前存在的...

Linux命令神器lsof
在Linux环境中,lsof(list open files)是一款强大的系统监控和诊断工具,它能列出所有系统中进程打开的文件,包括网络套接口。尤其在系统运维中,lsof发挥着不可或缺的作用。本文将详细介绍lsof的安装、使用方法以及实战应用。lsof的安装与基本使用在Centos系统中,通过yum命令安装lsof:yum -y install lso...

Linux lsof命令详解和使用示例
命令:lsof -i tcp:80 实例18:列出某个用户的所有活跃的网络端口 命令:lsof -a -u test -i 实例19:列出所有网络文件系统 命令:lsof -N 实例20:域名socket文件 命令:lsof -u 实例21:某个用户组所打开的文件信息 命令:lsof -g 5555 实例22:根据文件描述列出对应的文件信息 命令:lsof -d description(like ...

Linux 命令神器:lsof
lsof是系统管理\/ 安全 的尤伯工具。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lists openfiles)”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。有趣的是,lsof也是有着最多开关的Linux\/Unix命令之一。它有那么多的开关,它有许多选项支持使用-和+前缀。正如你所见...

Linux 命令神器:lsof
lsof能揭示与它们交互的所有资源。高级用法下,lsof结合多个选项展现出强大的分析能力,例如检查特定连接、发送信号或者筛选特定链接数的文件。虽然这只是lsof功能的初步介绍,想要深入了解,可以查阅man lsof或在线文档。总的来说,lsof是一个不可或缺的Linux命令,对于系统监控和故障排查极其有用。

Linux lsof命令详解
lsof是一个功能强大的实用程序,它可以在Linux和Unix系统上运行,其字面意思是“打开文件列表”。该命令的主要功能是检索不同运行进程打开的各种类型文件的详细信息。这些文件包括普通文件、目录、块文件、网络套接字、命名管道等。三、常用选项 四、安装方法 五、使用实例 输出内容示例如下:lsof输出各列...

Linux 命令神器:lsof
Linux中的强大工具lsof,其名副其实,意在"列出打开的文件",在Unix系统中,一切皆为文件,包括网络套接口。这个命令行工具对于系统管理和安全监控极为实用。lsof命令详解运行lsof,你可以看到一系列关键信息,包括:process ID:显示进程的唯一标识,便于追踪进程活动。用户:哪个用户拥有该进程的权限。file ...

linux lsof命令
基本介绍:lsof命令是一个列出当前系统打开文件的工具,在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。入门测试:列出所有打开的文件:[root@linux ~]#lsof 代码说明及拓展:-a 指示其它选项之间为与的关系 -c 进程名 输出指定进程所打开的文件 ...

Linux lsof命令详解
lsof的命令格式为:lsof [选项] filename,其中选项如-l、-c、-u、-g等,分别用于指定查找条件,如指定进程名、用户、组或文件类型。例如,-i选项可以用于查看特定端口或协议的进程情况,如'lsof -i :22'查看22端口的监听进程。在实际应用中,lsof可以帮助你查找正在使用特定文件系统或目录的进程,...

linux lsof命令详解
lsof命令是linux下的一个命令,它主要有一个功能,具体介绍如下:lsof命令能够用来查看文件的进程信息。说明:lsof命令可以说是一个十分方便的系统监视工具,由于lsof命令需要访问核心内存和各种文件,因此需要root用户执行。lsof命令的具体命令的语法格式为lsof[参数][文件]。参数:-a 列出打开文件存在的...

相似回答
大家正在搜