概述:
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。如TC和UDP等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。
Lsof(列出打开的文件)是一个列出当前系统打开的文件的工具。在linux环境中,一切都以文件的形式存在,通过它你不仅可以访问常规数据,还可以访问网络连接和硬件。如TC和UDP,系统会在后台为应用程序分配一个文件描述符。不管这个文件的性质如何,这个文件描述符为应用程序和基本操作系统之间的交互提供了一个通用接口。
Linux命令行操作视图
1。lsof
要查看进程打开的文件和端口等信息,它需要root权限才能运行。很多Linux发行版中都没有自带这样一个易用的工具,这是一件非常尴尬的事情。但是,这个工具的安装并不真诚和简单。只需执行yum/apt-get -y install lsof。
#查看使用该目录或文件的进程
lsof目录|文件
比如lsof /usr/***in/sshd
Lsof +d /usr/local/ only查看当前指定的目录。
Lsof +D /usr/local/查看当前目录及其子目录
#根据进程id检查进程打开的文件。多个进程id用逗号分隔。
lsof -p pid
见lsof -p 2601,2602,2603。
#查看这台机器的所有网络连接
lsof-i
#检查占用tcp端口80的程序
lsof-itcp:80
#检查占用端口10~1024的进程。
lsof -i tcp:10-1024
#列出IP的连接信息
lsof -i @192.168.88.100
#列出用户打开的文件信息
lsof -u根
#列出用户的所有活动网络端口
lsof -a -u root -i
#查看那些已删除但尚未释放的文件
lsof | grep已删除
#每三秒检查一次本地端口22,80的网络连接。
lsof -i @192.168.31.100:22,80 -r 3
#检查本机所有程序中打开文件数量最多的前20个程序。
lsof | awk & # 8216{打印2美元””}’sort | uniq -c | sort -nr | head -20
本文来自卿尘投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/622147.html