扩展阅读
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • Linux Kernel 'sctp_v6_xmit()'函数信息泄露漏洞
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • linux c下利用srand和rand函数生成随机字符串
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在没有linux的盘,只有DOS启动盘)
  • Linux c++虚函数(virtual function)简单用法示例代码
  • 如何让win2000和linux共存。我装好WIN2000,再装LINUX7.0,但LILO只能找到LINUX,不能引导WIN2000
  • Docker官方镜像将会使用Alpine Linux替换Ubuntu
  • 在windows中的VMware装了个linux,主板有两个串口,能做windows和linux的串口通信测试么,怎么测试这两个串口在linux是有效
  • Linux下c基于openssl生成MD5的函数
  • 我们网站的服务器从windows2000迁往linux,ASP程序继续使用,可是我连LINUX的皮毛都不了解,大家告诉我LINUX下怎么建网站??
  • linux僵尸(zombie)进程介绍及清除
  • 中文Linux与西文Linus分别哪一个版是权威?I认为是:中科软的白旗Linux与西文的绿帽子Linux!大家的看法呢?
  • Linux/CentOS下的CST和UTC时间的区别以及不一致的解决方法
  • Windows2000和Linux双操作系统,Linux系统有问题,我直接把Linux分区删除后,Windows2000进不去了,怎么办???
  •  
    当前位置:  操作系统>Linux

    linux下lsof命令介绍及lsof命令具体用法举例

     
        发布时间:2014-9-25  


        本文导语: linux下lsof命令介绍lsof命令 lsof - 列出所有打开的文件。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。在终端下输入lsof即可显示系统打开的文...

    linuxlsof命令介绍

    lsof命令

           lsof - 列出所有打开的文件。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接硬件终端下输入lsof即可显示系统打开的文件,因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能。

    lsof命令所有选项

           lsof [ -?abChlnNOPRstUvVX ] [ -A A ] [ -c c ] [ +c c ] [ +|-d d ] [ +|-D D ] [ +|-f [cfgGn] ] [ -F [f] ] [ -g [s] ] [

           -i [i] ] [ -k k ] [ +|-L [l] ] [ +|-m m ] [ +|-M ] [ -o [o] ] [ -p s ] [ +|-r [t] ] [ -S [t] ] [ -T [t] ] [ -u s ]  [

           +|-w ] [ -x [fl] ] [ -z [z] ] [ -Z [Z] ] [ -- ] [names]

    在linux终端下直接输入lsof命令显示结果如下所示:

    linux下lsof命令介绍


    显示结果各项解释如下:

    COMMAND进程的名称

    PID:进程标识符

    USER:进程所有者

    FD:文件描述符,应用程序通过文件描述符识别该文件。如cwdtxt

    TYPE文件类型,如DIR、REG等

    DEVICE:指定磁盘的名称

    SIZE:文件的大小

    NODE索引节点(文件在磁盘上的标识)

    NAME:打开文件的确切名称


    lsof命令具体用法举例

    lsof  filename 显示打开指定文件的所有进程
    lsof -a 表示两个参数都必须满足时才显示结果
    lsof -c string   显示COMMAND列中包含指定字符的进程所有打开的文件
    lsof -u username  显示所属user进程打开的文件
    lsof -g gid 显示归属gid的进程情况
    lsof +d /DIR/ 显示目录下被进程打开的文件
    lsof +D /DIR/ 同上,但是会搜索目录下的所有目录,时间相对较长
    lsof -d FD 显示指定文件描述符的进程
    lsof -n 不将IP转换为hostname,缺省是不加上-n参数
    lsof -i 用以显示符合条件的进程情况
    lsof `which httpd` //那个进程在使用apache的可执行文件
    lsof /etc/passwd //那个进程在占用/etc/passwd
    lsof /dev/hda6 //那个进程在占用hda6
    lsof /dev/cdrom //那个进程在占用光驱
    lsof -c sendmail //查看sendmail进程的文件使用情况
    lsof -c courier -u ^zahn //显示出那些文件被以courier打头的进程打开,但是并不属于用户zahn
    lsof -p 30297 //显示那些文件被pid为30297的进程打开
    lsof -D /tmp 显示所有在/tmp文件夹中打开的instance和文件的进程。但是symbol文件并不在列
    lsof -u1000 //查看uid是100的用户的进程的文件使用情况
    lsof -utony //查看用户tony的进程的文件使用情况
    lsof -u^tony //查看不是用户tony的进程的文件使用情况(^是取反的意思)
    lsof -i //显示所有打开的端口
    lsof -i:80 //显示所有打开80端口的进程
    lsof -i -U //显示所有打开的端口和UNIX domain文件
    lsof -i UDP@[url]www.akadia.com:123 //显示那些进程打开了到www.akadia.com的UDP的123(ntp)端口的链接
    lsof -i tcp@ohaha.ks.edu.tw:ftp -r //不断查看目前ftp连接的情况(-r,lsof会永远不断的执行,直到收到中断信号,+r,lsof会一直执行,直到没有档案被显示,缺省是15s刷新)
    lsof -i tcp@ohaha.ks.edu.tw:ftp -n //lsof -n 不将IP转换为hostname,缺省是不加上-n参数

    查看22端口现在运行的情况

    # lsof -i :22

    COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME
    sshd    1409 root    3u  IPv6   5678       TCP *:ssh (LISTEN)

    查看所属root用户进程所打开的文件类型为txt的文件:

    # lsof -a -u root -d txt

    COMMAND    PID USER  FD      TYPE DEVICE    SIZE    NODE NAME
    init       1    root txt       REG    3,3   38432 1763452 /sbin/init
    mingetty  1632 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    mingetty  1633 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    mingetty  1634 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    mingetty  1635 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    mingetty  1636 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    mingetty  1637 root txt       REG    3,3   14366 1763337 /sbin/mingetty
    kdm        1638 root txt       REG    3,3  132548 1428194 /usr/bin/kdm
    X          1670 root txt       REG    3,3 1716396 1428336 /usr/bin/Xorg
    kdm        1671 root txt       REG    3,3  132548 1428194 /usr/bin/kdm
    startkde  2427 root txt       REG    3,3  645408 1544195 /bin/bash

    查找谁在使用文件系统

    # lsof  /169IT/

    COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME
    bash    4208 root  cwd    DIR    3,1 4096    2 /169IT/
    vim     4230 root  cwd    DIR    3,1 4096    2 /169IT/

    lsof来查看当前是否有进程打开/var/logmessages文件

    # lsof |grep /var/log/messages

    syslogd   1283      root    2w      REG        3,3  5381017    1773647 /var/log/messages (deleted)


    • 本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
      本站(WWW.)站内文章除注明原创外,均为转载,整理或搜集自网络.欢迎任何形式的转载,转载请注明出处.
      转载请注明:文章转载自:[169IT-IT技术资讯]
      本文标题:linux下lsof命令介绍及lsof命令具体用法举例
    相关文章推荐:


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3