命令lsof

命令介绍

找出那个进程在使用这个文件..

  1. [nobody@aliyun-APP-84-197 biz]$ /usr/sbin/lsof biz.log
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. java 14031 nobody 86w REG 253,16 26298 21236466 biz.log
  1. COMMAND:进程的名称
  2. PID:进程标识符
  3. USER:进程所有者
  4. FD:文件描述符,应用程序通过文件描述符识别该文件
  5. TYPE:文件类型,如DIRREG
  6. DEVICE:指定磁盘的名称
  7. SIZE:文件的大小
  8. NODE:索引节点(文件在磁盘上的标识)
  9. NAME:打开文件的确切名称

列出进程使用哪些文件

  1. [nobody@aliyun-APP-84-197 biz]$ /usr/sbin/lsof -p 14031 |more
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. java 14031 nobody cwd DIR 253,16 4096 21233852 /data/project/tb-notify-topcomet-21605972/tomcat/bin
  4. java 14031 nobody rtd DIR 253,1 4096 2 /
  5. java 14031 nobody txt REG 253,1 7734 1446169 /usr/local/jdk1.8.0_112/bin/java
  6. java 14031 nobody mem REG 253,1 37420 1320141 /usr/local/jdk1.8.0_112/jre/lib/amd64/libawt_headless.so
  7. java 14031 nobody mem REG 253,1 772804 1320182 /usr/local/jdk1.8.0_112/jre/lib/amd64/libawt.so
  8. java 14031 nobody mem REG 253,1 68192 657657 /usr/lib64/libbz2.so.1.0.6
  9. java 14031 nobody mem REG 253,1 157424 657389 /usr/lib64/liblzma.so.5.2.2
  10. java 14031 nobody mem REG 253,1 90248 657534 /usr/lib64/libz.so.1.2.7
  11. java 14031 nobody mem REG 253,1 99952 657736 /usr/lib64/libelf-0.176.so
  12. java 14031 nobody mem REG 253,1 19888 657701 /usr/lib64/libattr.so.1.1.0
  13. java 14031 nobody mem REG 253,1 338672 662813 /usr/lib64/libdw-0.176.so

查看端口被那个进程占用

  1. [nobody@aliyun-APP-84-197 biz]$ /usr/sbin/lsof -i:37410
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. java 14031 nobody 91u IPv4 27224800 0t0 TCP xxx.xxxx.com:37410->*****ipII:http (ESTABLISHED)

查看某个用户活跃的网络端口

  1. [nobody@aliyun-APP-84-197 biz]$ /usr/sbin/lsof -a -u nobody -i
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. java 7486 nobody 85u IPv4 638519 0t0 TCP *:10912 (LISTEN)
  4. java 7486 nobody 90u IPv4 638523 0t0 TCP *:10911 (LISTEN)
  5. java 7486 nobody 91u IPv4 638525 0t0 TCP *:10909 (LISTEN)