Linux命令:lsof

news2024/11/18 22:46:11

目录

一、理论

1.lsof

二、实验

1.无参数

2.-p 参数

3.-l 参数

4. -u 参数

5.-c 参数

6.-d 参数

7.fileName

8. -i 参数


一、理论

1.lsof

(1)概念

  命令 lsof ( list opened files )负责列出系统中已经打开的文件,包括普通文件,目录,块特殊文件,字符特殊文件,正在执行的文本引用,库,流或网络文件(例如:网络套接字,NFS文件或UNIX域套接字)。

(2)常用参数

表1 lsof常用参数

参数功能
-p pid输出指定进程打开的文件
-l输出中使用ID代替用户名
-u userName输出指定用户打开的文件
-c string输出 COMMAND 列中包含 string 的项
-d fd输出包含指定描述符的项
fileName输出打开文件 fileName 的所有项
-i [46] [protocol][@hostname|hostaddr][:service|port]输出符合指定条件的项,其中:

     46 :分别指 IPv4、IPv6;

    protocol :指 TCP 或 UDP;

    hostname :  网络主机名;

    hostaddr : IP 地址;

    service : 包含在 /etc/services 中的名称;

    port : 端口号,可以是多个。

(3)无参数执行

执行 lsof

其中,每列参数的含义:

表2 lsof命令每列参数含义

参数含义
COMMAND命令名称
 PID进程ID
TID 线程ID,如果为空代表列出的是进程
TASKCMD任务名称,通常与 COMMAND 相同
USER用户ID号或登录名
FD文件描述符
TYPE与文件关联结点的类型
DEVICE设备号
SIZE/OFF文件大小/偏移量,以字节为单位
NODE 文件结点
NAME文件挂载点和文件所在的系统

二、实验

1.无参数

 在终端中直接执行 lsof 命令。

[root@centos2 /]# lsof 
COMMAND    PID  TID           USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd      1                root  cwd       DIR              253,0      4096         64 /
systemd      1                root  rtd       DIR              253,0      4096         64 /
systemd      1                root  txt       REG              253,0   1523568   68230830 /usr/lib/systemd/systemd
systemd      1                root  mem       REG              253,0     20040      90151 /usr/lib64/libuuid.so.1.3.0
systemd      1                root  mem       REG              253,0    261336     471232 /usr/lib64/libblkid.so.1.1.0
systemd      1                root  mem       REG              253,0     90664      90130 /usr/lib64/libz.so.1.2.7
systemd      1                root  mem       REG              253,0    157424      90237 /usr/lib64/liblzma.so.5.2.2
systemd      1                root  mem       REG              253,0     23968      90359 /usr/lib64/libcap-ng.so.0.0.0
systemd      1                root  mem       REG              253,0     19888      90634 /usr/lib64/libattr.so.1.1.0
……

2.-p 参数

执行命令 lsof -p 1,列出 1号 进程打开的文件。

[root@centos2 /]# lsof -p 1
COMMAND PID USER   FD      TYPE             DEVICE SIZE/OFF       NODE NAME
systemd   1 root  cwd       DIR              253,0     4096         64 /
systemd   1 root  rtd       DIR              253,0     4096         64 /
systemd   1 root  txt       REG              253,0  1523568   68230830 /usr/lib/systemd/systemd
systemd   1 root  mem       REG              253,0    20040      90151 /usr/lib64/libuuid.so.1.3.0
systemd   1 root  mem       REG              253,0   261336     471232 /usr/lib64/libblkid.so.1.1.0
systemd   1 root  mem       REG              253,0    90664      90130 /usr/lib64/libz.so.1.2.7
systemd   1 root  mem       REG              253,0   157424      90237 /usr/lib64/liblzma.so.5.2.2
systemd   1 root  mem       REG              253,0    23968      90359 /usr/lib64/libcap-ng.so.0.0.0
systemd   1 root  mem       REG              253,0    19888      90634 /usr/lib64/libattr.so.1.1.0
systemd   1 root  mem       REG              253,0    19776      64683 /usr/lib64/libdl-2.17.so
systemd   1 root  mem       REG              253,0   402384      90110 /usr/lib64/libpcre.so.1.2.0
systemd   1 root  mem       REG              253,0  2127336      64677 /usr/lib64/libc-2.17.so
systemd   1 root  mem       REG              253,0   144792      64703 /usr/lib64/libpthread-2.17.so
systemd   1 root  mem       REG              253,0    88720         84 /usr/lib64/libgcc_s-4.8.5-20150702.so.1
systemd   1 root  mem       REG              253,0    44448      64707 /usr/lib64/librt-2.17.so
systemd   1 root  mem       REG              253,0   269416     471397 /usr/lib64/libmount.so.1.1.0
systemd   1 root  mem       REG              253,0    91784      91082 /usr/lib64/libkmod.so.2.2.10
systemd   1 root  mem       REG              253,0   122984      90361 /usr/lib64/libaudit.so.1.0.0
systemd   1 root  mem       REG              253,0    61672     550830 /usr/lib64/libpam.so.0.83.1
systemd   1 root  mem       REG              253,0    20032      90636 /usr/lib64/libcap.so.2.22
……

3.-l 参数

执行命令 lsof -l ,输出中使用用户 ID 代替用户名。USER 列显示的是用户ID而不是用户名。

[root@centos2 /]# lsof -l 
COMMAND    PID  TID     USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd      1             0  cwd       DIR              253,0      4096         64 /
systemd      1             0  rtd       DIR              253,0      4096         64 /
systemd      1             0  txt       REG              253,0   1523568   68230830 /usr/lib/systemd/systemd
systemd      1             0  mem       REG              253,0     20040      90151 /usr/lib64/libuuid.so.1.3.0
systemd      1             0  mem       REG              253,0    261336     471232 /usr/lib64/libblkid.so.1.1.0
systemd      1             0  mem       REG              253,0     90664      90130 /usr/lib64/libz.so.1.2.7
systemd      1             0  mem       REG              253,0    157424      90237 /usr/lib64/liblzma.so.5.2.2
systemd      1             0  mem       REG              253,0     23968      90359 /usr/lib64/libcap-ng.so.0.0.0
systemd      1             0  mem       REG              253,0     19888      90634 /usr/lib64/libattr.so.1.1.0
……

4. -u 参数

执行命令 lsof -u root,输出 root 用户打开的文件。

[root@centos2 /]# lsof -u root 
COMMAND    PID USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd      1 root  cwd       DIR              253,0      4096         64 /
systemd      1 root  rtd       DIR              253,0      4096         64 /
systemd      1 root  txt       REG              253,0   1523568   68230830 /usr/lib/systemd/systemd
systemd      1 root  mem       REG              253,0     20040      90151 /usr/lib64/libuuid.so.1.3.0
systemd      1 root  mem       REG              253,0    261336     471232 /usr/lib64/libblkid.so.1.1.0
systemd      1 root  mem       REG              253,0     90664      90130 /usr/lib64/libz.so.1.2.7
systemd      1 root  mem       REG              253,0    157424      90237 /usr/lib64/liblzma.so.5.2.2
systemd      1 root  mem       REG              253,0     23968      90359 /usr/lib64/libcap-ng.so.0.0.0
systemd      1 root  mem       REG              253,0     19888      90634 /usr/lib64/libattr.so.1.1.0
……

5.-c 参数

执行命令 lsof -c sshd,输出 COMMAND 列包含 sshd 的项。

[root@centos2 /]#  lsof -c sshd 
COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF     NODE NAME
sshd    1510 root  cwd    DIR              253,0     4096       64 /
sshd    1510 root  rtd    DIR              253,0     4096       64 /
sshd    1510 root  txt    REG              253,0   853024  2450038 /usr/sbin/sshd
sshd    1510 root  mem    REG              253,0    62184    64695 /usr/lib64/libnss_files-2.17.so
sshd    1510 root  mem    REG              253,0    68192    90241 /usr/lib64/libbz2.so.1.0.6
sshd    1510 root  mem    REG              253,0    99944    90322 /usr/lib64/libelf-0.168.so
sshd    1510 root  mem    REG              253,0    19888    90634 /usr/lib64/libattr.so.1.1.0
sshd    1510 root  mem    REG              253,0    15688    90389 /usr/lib64/libkeyutils.so.1.5
sshd    1510 root  mem    REG              253,0    58728   409352 /usr/lib64/libkrb5support.so.0.1
……

6.-d 参数

执行命令 lsof -d 12,输出打开文件描述符 12 的所有项。

[root@centos2 /]#  lsof -d 12
COMMAND    PID   USER   FD      TYPE             DEVICE SIZE/OFF  NODE NAME
systemd      1   root   12u     unix 0xffff8800753a7400      0t0 11936 /run/systemd/private
systemd-j  635   root   12u      REG               0,19  8388608  1396 /run/log/journal/3144c1ec002b4a5ba24a4201fce78a36/system.journal
auditd     941   root   12u  a_inode                0,9        0  7017 [eventfd]
systemd-l  969   root   12u     unix 0xffff88007355c400      0t0 18886 socket
dbus-daem  970   dbus   12u     unix 0xffff88007355e000      0t0 18906 socket
avahi-dae  976  avahi   12u     IPv4              20540      0t0   UDP *:mdns 
NetworkMa 1073   root   12u  netlink                         0t0 22044 KOBJECT_UEVENT
tuned     1513   root   12w      CHR              10,61      0t0  1326 /dev/cpu_dma_latency
cupsd     1514   root   12u     IPv4              25922      0t0   TCP localhost:ipp (LISTEN)
libvirtd  1593   root   12u     unix 0xffff8800760cec00      0t0 27840 /var/run/libvirt/libvirt-admin-sock
gdm       1597   root   12u     unix 0xffff880068a13400      0t0 30006 @/tmp/dbus-wO56ln9Y
dnsmasq   1794   root   12r     FIFO                0,8      0t0 28702 pipe
X         1965   root   12u      CHR              10,63      0t0  1026 /dev/vga_arbiter
gnome-ses 1985    gdm   12u     unix 0xffff880064964000      0t0 30154 /tmp/.ICE-unix/1985
dbus-daem 1992    gdm   12u     unix 0xffff880064980000      0t0 31043 @/tmp/dbus-8WzejNFdMr
dbus-daem 2003    gdm   12u     unix 0xffff88005a2ef800      0t0 32670 @/tmp/dbus-MWHhpKb4yc
gnome-she 2016    gdm   12u     unix 0xffff880064984c00      0t0 31045 socket
pulseaudi 2039    gdm   12r  a_inode                0,9        0  7017 inotify
ibus-daem 2057    gdm   12u     unix 0xffff88005481d400      0t0 33800 @/tmp/dbus-7rkWWgJC
gnome-set 2089    gdm   12r  a_inode                0,9        0  7017 inotify
colord    2102 colord   12u     unix 0xffff88005a2b8000      0t0 33005 socket

7.fileName

执行命令 lsof /usr/lib64/ld-2.17.so,查看打开文件/usr/lib64/ld-2.17.so的进程项。

[root@centos2 /]#  lsof /usr/lib64/ld-2.17.so
COMMAND    PID           USER  FD   TYPE DEVICE SIZE/OFF  NODE NAME
systemd      1           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
systemd-j  635           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
lvmetad    657           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
systemd-u  664           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
auditd     941           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
audispd    943           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
sedispatc  945           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
irqbalanc  968           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
systemd-l  969           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
dbus-daem  970           dbus mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
rtkit-dae  975          rtkit mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
avahi-dae  976          avahi mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
lsmd       977 libstoragemgmt mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
rsyslogd   978           root mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
polkitd    979        polkitd mem    REG  253,0   164264 36574 /usr/lib64/ld-2.17.so
……

8. -i 参数

(1)执行命令 lsof -i 4,输出 TYPE 为 IPv4 的所有项。

[root@centos2 /]#  lsof -i 4
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd      1   root   41u  IPv4  18403      0t0  TCP *:sunrpc (LISTEN)
avahi-dae  976  avahi   12u  IPv4  20540      0t0  UDP *:mdns 
avahi-dae  976  avahi   13u  IPv4  20541      0t0  UDP *:60660 
rsyslogd   978   root    3u  IPv4  20409      0t0  TCP *:shell (LISTEN)
chronyd   1015 chrony    1u  IPv4  21596      0t0  UDP localhost:323 
sshd      1510   root    3u  IPv4  24985      0t0  TCP *:ssh (LISTEN)
cupsd     1514   root   12u  IPv4  25922      0t0  TCP localhost:ipp (LISTEN)
dnsmasq   1793 nobody    3u  IPv4  28688      0t0  UDP *:bootps 

(2)执行命令 lsof -i UDP 输出协议类型为 UDP 的所有项。

[root@centos2 /]#  lsof -i UDP
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
avahi-dae  976  avahi   12u  IPv4  20540      0t0  UDP *:mdns 
avahi-dae  976  avahi   13u  IPv4  20541      0t0  UDP *:60660 
chronyd   1015 chrony    1u  IPv4  21596      0t0  UDP localhost:323 
chronyd   1015 chrony    2u  IPv6  21597      0t0  UDP localhost:323 
dnsmasq   1793 nobody    3u  IPv4  28688      0t0  UDP *:bootps 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/633824.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【uni-app】使用uni-app实现简单的登录注册功能

文章目录 前言一、页面布局二、注册页面1.注册接口使用2.注册成功提示3.注册成功页面跳转4.完整代码 三、登录页面1.登录接口使用2.本地存储使用3.完整代码 总结 前言 大家好,今天和大家分享一下如何在uni-app中实现简单的登录注册功能。 首先你需要掌握一下知识点…

【SQL Server】数据库开发指南(九)详细讲解 MS-SQL 触发器的的创建、修改、应用与适用场景

本系列博文还在更新中,收录在专栏:#MS-SQL Server 专栏中。 本系列文章列表如下: 【SQL Server】 Linux 运维下对 SQL Server 进行安装、升级、回滚、卸载操作 【SQL Server】数据库开发指南(一)数据库设计的核心概念…

UE特效案例 —— 火堆

一,环境配置 创建默认地形Landscape,如给地形上材质需确定比例;添加环境主光源DirectionalLight,设置相应的强度和颜色;PostProcessVolume设置曝光,设置Min/Max Brightness为1; 与关闭Game Sett…

03并发进程

文章目录 哲学家进餐问题1.利用结构型信号量解决哲学家进餐问题解决方案1:每次最多允许四位哲学家就餐 2.利用AND型信号量解决哲学家进餐问题 生产者-消费者问题1.利用结构型信号量解决生产者-----消费者问题单缓冲区生产者-消费者问题多缓冲区 2.利用AND型信号量解…

高并发编程:并发容器

一、概述 常见的容器如下图,我们会挑选高并发中常用的容器进行介绍。 二、ConcurrentHashMap 个ConcurrentHashMap提高效率主要提高在读上面,由于它往里插的时候内部又做了各种各样的判断,本来是链表的,到8之后又变成了红黑树&a…

详细讲解!selenium:解决页面元素display:none的方法

目录 前言: 1、具体问题 2、解决方案 代码解析: 结尾: 前言: 在进行 Web 自动化测试时,页面元素的可见性对测试结果的准确性和稳定性至关重要。然而,有些时候页面元素会被设置为 display:none&#x…

亚马逊云科技出海日,助推出海业务全球拓展突飞猛进

出海路漫漫,企业开拓全球市场而孤军奋战,常常会感到力不从心。好的产品有了,渠道有了,供应链有了,还要自己从0-1搭建存储、网络和架构?营销季来了想趁机冲一波销量,还要自己运维本地IDC、大促来…

10.无监督学习之K-means算法

10.1 无监督学习的定义 监督学习:我们有一些列标签,然后用假设函数去拟合它 无监督学习:给出的数据不带任何标签。对于无监督学习来说,需要做的就是将数据输入到算法中,让算法找到一些隐含在数据中的结构,通…

C语言—程序环境和预处理

程序环境和预处理 程序的翻译环境和执行环境编译、链接翻译环境编译预处理(预编译)编译汇编 链接 编译环境几个阶段的总结 运行环境(执行环境)预处理详解预定义符号#define#define 定义标识符#define 定义宏#define 替换规则#和##…

【MySQL】数据库中表的操作详解

【MySQL】数据库表的基本操作 一、表的创建二、查看表结构三、修改表结构3.1 添加表中字段3.2 修改表中字段3.3 删除表中字段3.4 修改表名3.5 修改列名 四、删除表 温馨提示:这里的表操作指的是表结构的操作,属于DDL数据定义语言 一、表的创建 CREATE …

hooks组件+例子+底层机制

1.React组件分类 函数组件 1.不具备"状态、ref、周期函数"等内容,第一次渲染完毕后,无法基于组件内部的操作来控制其更新,因此称之为静态组件!。但是具备属性及插槽,父组件可以控制其重新渲染 2.渲染流程简单&#xff…

Same Symbol | 哇咔咔!!!盘点一下表达矩阵中重复基因的处理方法!~

1写在前面 医院天天叫我们填问卷,我真是不能理解。🫠 动不动就问我们对医院的福利满意吗,对自己的收入满意吗,觉不觉得工作负荷太重了???🙂 我们满不满意,觉不觉得累&…

大学物理(上)-期末知识点结合习题复习(2)——运动的描述考点总结、质点运动学-牛顿运动定律

目录 运动的描述 期末考点 质点运动学 牛顿运动定律知识点 题1(牛顿第二定律) 题目描述 题解 题2 (圆周运动) 题目描述 题解 运动的描述 期末考点 1.速度和加速度的推导 平均速度平均速度反映的只是在一段时间内位移的变化,如果需要精准的地知道质点在…

chatgpt赋能python:Python如何判断奇偶数?

Python如何判断奇偶数? 作为一门功能强大且容易上手的编程语言,Python具有许多有用的工具和功能。其中之一就是判断奇偶数。在本文中,我们将介绍Python中判断奇偶数的不同方法。 H1:Python中的基本判断方法 Python中最基本的判…

(八)CSharp-泛型协变和逆变(3)

一、协变和逆变 可变性分为三种: 协变、逆变和不变。 协变和逆变: 为泛型接口和泛型委托添加了一个处理类型转换问题的扩展。 问题: 当两个类对象是继承与派生的关系时,由于编译器通过泛型实例化时没法确认它们之间的关系&…

(数组) 1991. 找到数组的中间位置 ——【Leetcode每日一题】

❓1991. 找到数组的中间位置 难度:简单 给你一个下标从 0 开始的整数数组 nums ,请你找到 最左边 的中间位置 middleIndex (也就是所有可能中间位置下标最小的一个)。 中间位置 middleIndex 是满足 nums[0] nums[1] ... num…

FTP协议详解

文章目录 1 FTP概述2 实验环境3 FTP详解3.1 文件传输过程3.2 报文格式3.3 数据连接3.4 主动模式3.5 被动模式3.6 匿名服务器 4 总结 1 FTP概述 FTP为File Transfer Protocol的缩写,即文件传输协议,是TCP/IP 协议族中的协议之一。FTP是一个用于在计算机网…

算法模板(3):搜索(3):图论提高

图论提高 最小生成树 (1)朴素版prim算法( O ( n 2 ) O(n ^ 2) O(n2)) 适用范围:稠密图易错:注意有向图还是无向图;注意有没有重边和负权边。从一个集合向外一个一个扩展,最开始只…

(文章复现)面向配电网韧性提升的移动储能预布局与动态调度策略(1)-灾前布局matlab代码

参考文献: [1]王月汉,刘文霞,姚齐,万海洋,何剑,熊雪君.面向配电网韧性提升的移动储能预布局与动态调度策略[J].电力系统自动化,2022,46(15):37-45. 1.基本原理 1. 1 目标函数 本文以最恶劣光伏出力场景下的移动储能配置成本与负荷削减成本最小为目标,建…

(数组) 724. 寻找数组的中心下标 ——【Leetcode每日一题】

❓724. 寻找数组的中心下标 难度:简单 给你一个整数数组 nums ,请计算数组的 中心下标 。 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。 如果中心下标位于数组最左端,那么左侧数之和视为…