我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何使用lsof命令

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何使用lsof命令

这篇文章将为大家详细讲解有关如何使用lsof命令,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

lsof是系统管理/安全的尤伯工具。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lists openfiles)”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。

如何使用lsof命令

1, 使用 lsof 命令行列出所有打开的文件

# lsof

这可是一个很长的列表,包括打开的文件和网络

如何使用lsof命令
lsof1

上述屏幕截图中包含很多列,例如 PID、user、FD 和 TYPE 等等。

FD - File descriptor

FD 列包含这样一些值

cwd - Current working directorytxt - Text filemem - Memory Mapped filemmap - Memory Mapped deviceNumber - It represent the actual file descriptor. For example, 0u, 1w and 3r

r 是读的意思,w 是写,u 代表读写

Type 代表文件类型,例如:

>REG - Regular file>DIR - Directory>CHR - Character special file>FIFO - First in first out

2, 列出某个用户打开的文件

# lsof -u user_name

Example:

# lsof -u crybitCOMMAND   PID   USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAMEsshd    29609 crybit  cwd    DIR            144,233     4096  117711421 /sshd    29609 crybit  rtd    DIR            144,233     4096  117711421 /sshd    29609 crybit  txt    REG            144,233   409488  119020186 /usr/sbin/sshdsshd    29609 crybit  mem    REG            144,241          2443001619 (deleted)/dev/zero (stat: No such file or directory)sshd    29609 crybit  mem    REG               8,37           119021850 /lib64/libnss_dns-2.5.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119021984 /lib64/security/pam_succeed_if.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119022000 /lib64/security/pam_limits.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119021960 /lib64/security/pam_keyinit.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119021972 /lib64/security/pam_cracklib.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119021987 /lib64/security/pam_nologin.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119021988 /lib64/security/pam_deny.so (path dev=144,233)sshd    29609 crybit  mem    REG               8,37           119019223 /usr/lib64/libcrack.so.2.8.0 (path dev=144,233)..........

3, 列出在某个端口运行的进程

# lsof -i :port_number

Example:

# lsof -i :22COMMAND   PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEsshd      769   root    3u  IPv6 2281738844      0t0  TCP *:ssh (LISTEN)sshd      769   root    4u  IPv4 2281738846      0t0  TCP *:ssh (LISTEN)# lsof -i :3306COMMAND   PID  USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEmysqld  11106 mysql   10u  IPv4 2340975114      0t0  TCP *:mysql (LISTEN)

4, 只列出使用 IPv4 的打开文件

# lsof -i 4 - For IPv4

Example:

# lsof -i 4COMMAND     PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEsshd        769   root    4u  IPv4 2281738846      0t0  TCP *:ssh (LISTEN)named      8362  named   20u  IPv4 2334751017      0t0  TCP localhost.localdomain:domain (LISTEN)named      8362  named   21u  IPv4 2334751019      0t0  TCP crybit.com:domain (LISTEN)named      8362  named   22u  IPv4 2334751021      0t0  TCP localhost.localdomain:rndc (LISTEN)named      8362  named  512u  IPv4 2334751016      0t0  UDP localhost.localdomain:domainnamed      8362  named  513u  IPv4 2334751018      0t0  UDP crybit.com:domaintcpserver  9975   root    3u  IPv4 2335487959      0t0  TCP *:pop3 (LISTEN)tcpserver  9978   root    3u  IPv4 2335487967      0t0  TCP *:pop3s (LISTEN)tcpserver  9983   root    3u  IPv4 2335487997      0t0  TCP *:imap (LISTEN)tcpserver  9987   root    3u  IPv4 2335488014      0t0  TCP *:imaps (LISTEN)xinetd    10413   root    5u  IPv4 2336070983      0t0  TCP *:ftp (LISTEN)xinetd    10413   root    6u  IPv4 2336070984      0t0  TCP *:smtp (LISTEN)mysqld    11106  mysql   10u  IPv4 2340975114      0t0  TCP *:mysql (LISTEN)# lsof -i 6

Example:

# lsof -i 6COMMAND   PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEsshd      769   root    3u  IPv6 2281738844      0t0  TCP *:ssh (LISTEN)named    8362  named   23u  IPv6 2334751024      0t0  TCP localhost.localdomain:rndc (LISTEN)httpd   29241   root    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)httpd   29241   root    6u  IPv6 2439777211      0t0  TCP *:https (LISTEN)httpd   29243 apache    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)httpd   29243 apache    6u  IPv6 2439777211      0t0  TCP *:https (LISTEN)httpd   29244 apache    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)httpd   29244 apache    6u  IPv6 2439777211      0t0  TCP *:https (LISTEN)httpd   29245 apache    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)httpd   29245 apache    6u  IPv6 2439777211      0t0  TCP *:https (LISTEN)httpd   29246 apache    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)

5, 列出端口在 1-1024 之间的所有进程

# lsof -i :1-1024

Example:

# lsof -i :1-1024COMMAND     PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEsshd        769   root    3u  IPv6 2281738844      0t0  TCP *:ssh (LISTEN)sshd        769   root    4u  IPv4 2281738846      0t0  TCP *:ssh (LISTEN)named      8362  named   20u  IPv4 2334751017      0t0  TCP localhost.localdomain:domain (LISTEN)named      8362  named   21u  IPv4 2334751019      0t0  TCP crybit.com:domain (LISTEN)named      8362  named   22u  IPv4 2334751021      0t0  TCP localhost.localdomain:rndc (LISTEN)named      8362  named   23u  IPv6 2334751024      0t0  TCP localhost.localdomain:rndc (LISTEN)tcpserver  9975   root    3u  IPv4 2335487959      0t0  TCP *:pop3 (LISTEN)tcpserver  9978   root    3u  IPv4 2335487967      0t0  TCP *:pop3s (LISTEN)tcpserver  9983   root    3u  IPv4 2335487997      0t0  TCP *:imap (LISTEN)tcpserver  9987   root    3u  IPv4 2335488014      0t0  TCP *:imaps (LISTEN)xinetd    10413   root    5u  IPv4 2336070983      0t0  TCP *:ftp (LISTEN)xinetd    10413   root    6u  IPv4 2336070984      0t0  TCP *:smtp (LISTEN)httpd     29241   root    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)httpd     29241   root    6u  IPv6 2439777211      0t0  TCP *:https (LISTEN)httpd     29243 apache    4u  IPv6 2439777206      0t0  TCP *:http (LISTEN)........

6, 根据进程id来列出打开的文件

# lsof -p PID

Example:

# lsof -p 11106COMMAND   PID  USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAMEmysqld  11106 mysql  cwd    DIR            144,233     4096  119025114 /var/lib/mysqlmysqld  11106 mysql  rtd    DIR            144,233     4096  117711421 /mysqld  11106 mysql  txt    REG            144,233  9484782  119025094 /usr/libexec/mysqldmysqld  11106 mysql  mem    REG               8,37           119025094 /usr/libexec/mysqld (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021850 /lib64/libnss_dns-2.5.so (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021830 /lib64/libnss_files-2.5.so (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021841 /lib64/libsepol.so.1 (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021801 /lib64/libselinux.so.1 (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021785 /lib64/libresolv-2.5.so (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119021920 /lib64/libkeyutils-1.2.so (path dev=144,233)mysqld  11106 mysql  mem    REG               8,37           119017006 /usr/lib64/libkrb5support.so.0.1 (path dev=144,233)........

7, 杀掉某个用户的所有活动进程

# killall -9 `lsof -t -u username`

8, 列出某个目录中被打开的文件

# lsof +D path_of_the_directory

Example:

# lsof +D /var/log/COMMAND     PID   USER   FD   TYPE  DEVICE SIZE/OFF      NODE NAMEsyslogd    9729   root    1w   REG 144,233        0 119019158 /var/log/kernelsyslogd    9729   root    2w   REG 144,233   350722 119021699 /var/log/messagessyslogd    9729   root    3w   REG 144,233   591577 119019159 /var/log/securesyslogd    9729   root    4w   REG 144,233   591577 119019159 /var/log/secure

9, 根据进程名称列出打开的文件

# lsof -c process_name

Example:

# lsof -c sshCOMMAND     PID USER   FD   TYPE     DEVICE SIZE/OFF    NODE NAMEsshd        483 root  cwd    DIR        8,9     4096       2 /sshd        483 root  rtd    DIR        8,9     4096       2 /sshd        483 root  txt    REG        8,9   523488 1193409 /usr/sbin/sshd

10, 列出所有网络连接

# lsof -i

该命令列出所有侦听和已建立的网络连接 Example:

# lsof -iCOMMAND     PID   USER   FD   TYPE     DEVICE SIZE/OFF NODE NAMEsshd        769   root    3u  IPv6 2281738844      0t0  TCP *:ssh (LISTEN)sshd        769   root    4u  IPv4 2281738846      0t0  TCP *:ssh (LISTEN)named      8362  named   20u  IPv4 2334751017      0t0  TCP localhost.localdomain:domain (LISTEN)named      8362  named   21u  IPv4 2334751019      0t0  TCP crybit.com:domain (LISTEN)named      8362  named   22u  IPv4 2334751021      0t0  TCP localhost.localdomain:rndc (LISTEN)named      8362  named   23u  IPv6 2334751024      0t0  TCP localhost.localdomain:rndc (LISTEN)named      8362  named  512u  IPv4 2334751016      0t0  UDP localhost.localdomain:domain

关于“如何使用lsof命令”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何使用lsof命令

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何使用lsof命令

这篇文章将为大家详细讲解有关如何使用lsof命令,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。lsof是系统管理/安全的尤伯工具。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lists
2023-06-27

如何在Linux中使用lsof命令

这期内容当中小编将会给大家带来有关如何在Linux中使用lsof命令,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.命令格式:lsof [参数][文件]2.命令功能:用于查看你进程开打的文件,打开文件的
2023-06-13

Linux系统下如何使用lsof命令

本篇内容主要讲解“Linux系统下如何使用lsof命令”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux系统下如何使用lsof命令”吧!lsof命令简介:lsof(list open fi
2023-06-12

Linux lsof命令使用详解

lsof(list open files)是一个查看进程打开的文件的工具。 在 linux 系统中,一切皆文件。通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以 lsof 命令不仅可以查看进程打开的文件、目录,还可以查看进程监
2022-06-04

在Linux系统中使用lsof命令

这篇文章主要讲解了“在Linux系统中使用lsof命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在Linux系统中使用lsof命令”吧!lsof是系统管理/安全的尤伯工具。我大多数时候用
2023-06-13

linux中lsof命令的使用方法

这期内容当中小编将会给大家带来有关linux中lsof命令的使用方法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。lsof(list open files)是一个列出当前系统打开文件的工具。在linux环
2023-06-09

lsof 命令怎么在Linux中使用

lsof 命令怎么在Linux中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下
2023-06-13

Linux系统lsof命令的使用方法

Linux系统lsof命令的使用方法,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Linux系统中lsof命令是用于列出当前系统打开文件的工具,是一个非常方便的命令。lsof命
2023-06-28

Linux中lsof命令有什么用

这篇文章主要为大家展示了“Linux中lsof命令有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中lsof命令有什么用”这篇文章吧。Linux常用命令lsof命令 用于查看你进
2023-06-28

Linux如何利用lsof命令恢复删除的文件

这篇文章主要介绍Linux如何利用lsof命令恢复删除的文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!lsof命令lsof命令用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复
2023-06-16

Linux中的lsof命令怎么用

这期内容当中小编将会给大家带来有关Linux中的lsof命令怎么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。lsof 命令是 Linux 系统的扩展工具,它的含义是 list opened filed
2023-06-28

Linux系统lsof命令怎么用

这篇文章主要介绍了Linux系统lsof命令怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。lsof是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件
2023-06-28

linux使用lsof命令查看文件打开情况

前言我们都知道,在linux下,“一切皆文件”,因此有时候查看文件的打开情况,就显得格外重要,而这里有一个命令能够在这件事上很好的帮助我们-它就是lsof。 linux下有哪些文件在介绍lsof命令之前,先简单说一下,linux主要有哪些文
2022-06-04

Linux系统中lsof命令怎么用

这篇文章主要介绍Linux系统中lsof命令怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!lsof是一个查看进程打开的文件的工具, linux 系统一切皆文件。通过文件不仅仅可以访问常规数据,还可以访问网络连接
2023-06-28

Linux系统被入侵后如何使用lsof命令恢复被删除日志

这篇文章主要介绍“Linux系统被入侵后如何使用lsof命令恢复被删除日志”,在日常操作中,相信很多人在Linux系统被入侵后如何使用lsof命令恢复被删除日志问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”L
2023-06-13

如何理解Linux系统中的lsmod、lsof、lspci、lsscsi命令及如何实践

本篇文章给大家分享的是有关如何理解Linux系统中的lsmod、lsof、lspci、lsscsi命令及如何实践,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。今天主要介绍下Li
2023-06-16

Linux命令之lz4命令如何使用

本篇内容主要讲解“Linux命令之lz4命令如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux命令之lz4命令如何使用”吧!一、lz4命令简介LZ4是一种压缩格式,特点是压缩/解压
2023-07-05

uniq命令如何使用

本篇内容介绍了“uniq命令如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!uniq命令本身被用作去除文本文件中的重复行,与sort命
2023-06-27

awk命令如何使用

今天小编给大家分享一下awk命令如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Awk模式Awk支持不同类型的模式,包
2023-06-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录