lsof---列出当前系统打开的文件信息
lsof---list open file,一个列出当前系统打开文件的工具
1.lsof查找原理
在Linux系统中,系统为了方便管理进程,会在/proc下为每一个运行中的进程创建一个目录,目录名就是进程号,而在进程的目录下有一个叫作fd的目录,这个目录下存放的是进程打开的所有文件。而lsof命令搜寻的其实就是/proc/$PID/fd下面的文件。
[root@localhost ~]# lsof
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 253,0 4096 128 /
systemd 1 root rtd DIR 253,0 4096 128 /
systemd 1 root txt REG 253,0 1214424 353923 /usr/lib/systemd/systemd
systemd 1 root mem REG 253,0 61624 67175738 /usr/lib64/libnss_files-2.17.so
systemd 1 root mem REG 253,0 90632 67211369 /usr/lib64/libz.so.1.2.7
systemd 1 root mem REG 253,0 19888 67211548 /usr/lib64/libattr.so.1.1.0
systemd 1 root mem REG 253,0 115848 67175725 /usr/lib64/libnsl-2.17.so
systemd 1 root mem REG 253,0 153184 67176234 /usr/lib64/liblzma.so.5.0.99
systemd 1 root mem REG 253,0 398264 67176278 /usr/lib64/libpcre.so.1.2.0
......
# COMMAND:进程的名称,如果进程的名字很长,则这里只会显示前9个字符。
# PID:进程标识符。如果执行命令时指定-R参数,则父进程标识符PPID也会显示出来。
# USER:进程所有者。如果执行命令时指定-g参数,则进程所属组标识符PGID也会显示出来。
# FD:一般是指文件描述符。
# TYPE:文件类型,如DIR、REG等,常见的文件类型。
◇ DIR:表示目录。
◇ REG:表示普通文件。
◇ CHR:表示字符类型。
◇ BLK:块设备类型。
◇ UNIX:UNIX域套接字。
◇ FIFO:先进先出(FIFO)队列。
◇ IPv4/IPv6:网际协议(IP)套接字。
# DEVICE:磁盘的名称。
# SIZE:文件的大小。
# NODE:索引节点(文件在磁盘上的标识)。
# NAME:打开文件的确切名称。
FD:两种文件描述符 | desc |
---|---|
第一类是文件描述符 | 0表示标准输入。 1表示标准输出。 2表示标准错误输出。 n表示其他文件描述符的数值 |
第二类的描述文件特征的标识 | cwd:应用程序的当前工作目录,也是该应用程序启动的目录。 txt:该类型文件是程序代码或数据。 mem:内存映射文件。 pd:父目录。 rtd:根目录。 DEL:表示文件已经被进程删除但还在内存中存在。 |
2.查看谁正在使用某个文件
lsof /filepath/file
3:查看端口被谁占用
lsof -i:port
lsof -i udp:55
4.列出某个程序打开的文件信息
lsof -c sshd
5.通过某个进程号显示该进行打开的文件
lsof -p 1
6.列出所有tcp 网络连接信息
lsof -i tcp
7.列出某个用户打开的文件信息
lsof -u username
lsof---列出当前系统打开的文件信息的更多相关文章
- 通过某个进程号显示该进行打开的文件 lsof -p 1 11. 列出多个进程号对应的文件信息 lsof -p 123,456,789 5. 列出某个用户打开的文件信息 lsof -u username
linux命令 — lsof 查看进程打开那些文件 或者 查看文件给那个进程使用 lsof命令是什么? 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件,2.目录 3.网络文件系 ...
- Linux进程管理 lsof命令:列出进程调用或打开的文件信息
lsof命令 通过 ps 命令查询到系统中所有的进程, 通过lsof 命令可以知道这个进程到底在调用哪些文件.lsof 命令格式如下: [root@localhost ~]# lsof [选项] 选项 ...
- 关于Linux系统打开最大文件数量
今天做压力测试 客户端数据提到2000人,在这个过程中,遇到了分配socket失败的问题提示 errno:24 Too many open files查找资料后发现是Linux系统配置了打开文件的最大 ...
- 解决系统打开CHM文件无法正常显示
最近学习servlet下载了一个CHM的帮助手册但是打开后右侧却时空白.试了各种方法都没有成功最后终于找到原因所在. 一般情况下无法显示网页:右键 chm文件属性里最下面有个“解除锁定”,点击“解除锁 ...
- linux命令 — lsof 查看进程打开那些文件 或者 查看文件给那个进程使用
lsof命令是什么? 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件,2.目录 3.网络文件系统的文件,4.字符设备文件 5.(函数)共享库 6.管道,命名管道 7.符号链 ...
- linux lsof 查看进程打开那些文件 或者 查看文件给那个进程使用
lsof命令是什么? 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件,2.目录 3.网络文件系统的文件,4.字符设备文件 5.(函数)共享库 6.管道,命名管道 7.符号链 ...
- lsof 命令 系统管理 系统监控
lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件. 在终端下输入ls ...
- lsof命令查看端口关联的文件
lsof命令查看端口关联的文件 lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网 ...
- Linux 命令 - lsof: 列出打开的文件
lsof 是一个列出当前系统打开文件的工具. 命令格式 lsof [ -?abChlnNOPRstUvVX ] [ -A A ] [ -c c ] [ +c c ] [ +|-d d ] [ + ...
随机推荐
- python性能测试值timeit的使用示例
from timeit import Timer def t1(): li = [] for i in range(10000): li.append(i) def t2(): li = [] for ...
- pytorch-卷积基本网络结构-提取网络参数-初始化网络参数
基本的卷积神经网络 from torch import nn class SimpleCNN(nn.Module): def __init__(self): super(SimpleCNN, self ...
- 手把手教你用蒲公英获取udid
如果需要获取udid,但是拥有手机的测试用户身边没有mac电脑和xcode环境, 今天就分享一个快捷的在线获得udid的方法 利用蒲公英网站的获取udid功能 手机浏览器访问 http://www.p ...
- <application>节点属性
1.android:allowBackup 它表示是否允许应用程序参与备份.如果将该属性设置为false,则即使备份整个系统,也不会执行这个应用程序的备份操作,而整个系统备份能导致所有应用程序数据通过 ...
- 【Zookeeper】分布式环境搭建
环境说明 本文以三台机器为例,分别为bigdata111,bigdata112,bigdata113三台机器,先部署bigdata111机器,然后通过scp分发配置方式配置其他两台机器: 安装步骤 上 ...
- ClosureTable
1. 查询所有子节点 SELECT `chidren_id` FROM `xi_category4_closure` WHERE `parent_id` = 0 AND `distance` > ...
- LeetCode.1185-一周中的星期几(Day of the Week)
这是小川的第415次更新,第448篇原创 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第266题(顺位题号是1185).给定日期,返回该日期的星期几.输入为三个整数,分别代表日,月和 ...
- 【Web】如何注释?
HTML 形式:<!-- 注释内容 --> 实例: <!-- <p>这是第一段</p> --> CSS 形式:/* 注释内容 */ 实例: /* 选中i ...
- 【POJ - 1950】Dessert(dfs)
-->Dessert Descriptions: 给你一个数N(3<=N<=15);每个数之间有三种运算符“‘+’,‘-’,‘.’”.输出和值等于零的所有的运算情况及次数num,如果 ...
- ERROR 2002 (HY000): Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) "
找不到mysql.sock这个文件 如果在你操作安装提示创建该文件,重启服务器还是提示这个错误可以试一下 mysql -uroot -h 127.0.0.1 -p 应该是可以直接进入 具体处理方法 重 ...