linux的lsof命令,10个基本的lsof命令详解(linux)

1. 显示所有的打开文件信息

分别是COMMAND、PID、USER、FD、TYPE、DEVICE、SIZE/OFF、NODE.NAMe等# lsof

COMMAND    PID      USER   FD      TYPE     DEVICE  SIZE/OFF       NODE NAME

init         1      root  cwd      DIR      253,0      4096          2 /

init         1      root  rtd      DIR      253,0      4096          2 /

init         1      root  txt      REG      253,0    145180     147164 /sbin/init

init         1      root  mem      REG      253,0   1889704     190149 /lib/libc-2.12.so

init         1      root   0u      CHR        1,3       0t0       3764 /dev/null

init         1      root   1u      CHR        1,3       0t0       3764 /dev/null

init         1      root   2u      CHR        1,3       0t0       3764 /dev/null

init         1      root   3r     FIFO        0,8       0t0       8449 pipe

init         1      root   4w     FIFO       0,8       0t0       8449 pipe

init         1      root   5r      DIR       0,10         0          1 inotify

init         1      root   6r      DIR       0,10         0          1 inotify

init         1      root   7u     unix 0xc1513880       0t0       8450 socket

FD C 文件描述符:

cwd 当前工作目录

rtd 根目录

txt 程序文本(代码/数据)

mem 内存映射文件---将磁盘文件映射到内存中

r 读访问

w 写访问

u 读写访问

TYPE C 文件类型描述符

DIR C 目录

REG C 普通文件

CHR C 字符专门文件

BHR -  块专门文件

FIFO C 先进先出栈

2. 列出特定用户所有打开文件# lsof -u tecmint

COMMAND  PID    USER   FD   TYPE     DEVICE SIZE/OFF   NODE NAME

sshd    1838 tecmint  cwd    DIR      253,0     4096      2 /

sshd    1838 tecmint  rtd    DIR      253,0     4096      2 /

sshd    1838 tecmint  txt    REG      253,0   532336 188129 /usr/sbin/sshd

sshd    1838 tecmint  mem    REG      253,0    19784 190237 /lib/libdl-2.12.so

sshd    1838 tecmint  mem    REG      253,0   122436 190247 /lib/libselinux.so.1

sshd    1838 tecmint  mem    REG      253,0   255968 190256 /lib/libgssapi_krb5.so.2.2

sshd    1838 tecmint  mem    REG      253,0   874580 190255 /lib/libkrb5.so.3.3

3. 用 -i 选项列出指定端口的所有进程,下例为:22端口# lsof -i TCP:22

COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

sshd    1471    root    3u  IPv4  12683      0t0  TCP *:ssh (LISTEN)

sshd    1471    root    4u  IPv6  12685      0t0  TCP *:ssh (LISTEN)

4. 仅列出IPv4或IPv6 O打开文件# lsof -i 4

COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rpcbind   1203     rpc    6u  IPv4  11326      0t0  UDP *:sunrpc

rpcbind   1203     rpc    7u  IPv4  11330      0t0  UDP *:954

rpcbind   1203     rpc    8u  IPv4  11331      0t0  TCP *:sunrpc (LISTEN)

avahi-dae 1241   avahi   13u  IPv4  11579      0t0  UDP *:mdns

avahi-dae 1241   avahi   14u  IPv4  11580      0t0  UDP *:58600

# lsof -i 6

COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rpcbind   1203     rpc    9u  IPv6  11333      0t0  UDP *:sunrpc

rpcbind   1203     rpc   10u  IPv6  11335      0t0  UDP *:954

rpcbind   1203     rpc   11u  IPv6  11336      0t0  TCP *:sunrpc (LISTEN)

rpc.statd 1277 rpcuser   10u  IPv6  11858      0t0  UDP *:55800

rpc.statd 1277 rpcuser   11u  IPv6  11862      0t0  TCP *:56428 (LISTEN)

cupsd     1346    root    6u  IPv6  12112      0t0  TCP localhost:ipp (LISTEN)

5. 列出TCP端口在1-1024的所打开文件的所有运行进程# lsof -i TCP:1-1024

COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rpcbind 1203     rpc   11u  IPv6  11336      0t0  TCP *:sunrpc (LISTEN)

cupsd   1346    root    7u  IPv4  12113      0t0  TCP localhost:ipp (LISTEN)

sshd    1471    root    4u  IPv6  12685      0t0  TCP *:ssh (LISTEN)

master  1551    root   13u  IPv6  12898      0t0  TCP localhost:smtp (LISTEN)

sshd    1834    root    3r  IPv4  15101      0t0  TCP 192.168.0.2:ssh->192.168.0.1:conclave-cpp (ESTABLISHED)

sshd    1838 tecmint    3u  IPv4  15101      0t0  TCP 192.168.0.2:ssh->192.168.0.1:conclave-cpp (ESTABLISHED)

sshd    1871    root    3r  IPv4  15842      0t0  TCP 192.168.0.2:ssh->192.168.0.1:groove (ESTABLISHED)

httpd   1918    root    5u  IPv6  15991      0t0  TCP *:http (LISTEN)

httpd   1918    root    7u  IPv6  15995      0t0  TCP *:https (LISTEN)

6. 排除用户用‘^’字符,例子为:排除root用户# lsof -i -u^root

COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rpcbind   1203     rpc    6u  IPv4  11326      0t0  UDP *:sunrpc

rpcbind   1203     rpc    7u  IPv4  11330      0t0  UDP *:954

rpcbind   1203     rpc    8u  IPv4  11331      0t0  TCP *:sunrpc (LISTEN)

rpcbind   1203     rpc    9u  IPv6  11333      0t0  UDP *:sunrpc

rpcbind   1203     rpc   10u  IPv6  11335      0t0  UDP *:954

rpcbind   1203     rpc   11u  IPv6  11336      0t0  TCP *:sunrpc (LISTEN)

avahi-dae 1241   avahi   13u  IPv4  11579      0t0  UDP *:mdns

avahi-dae 1241   avahi   14u  IPv4  11580      0t0  UDP *:58600

rpc.statd 1277 rpcuser    5r  IPv4  11836      0t0  UDP *:soap-beep

rpc.statd 1277 rpcuser    8u  IPv4  11850      0t0  UDP *:55146

rpc.statd 1277 rpcuser    9u  IPv4  11854      0t0  TCP *:32981 (LISTEN)

rpc.statd 1277 rpcuser   10u  IPv6  11858      0t0  UDP *:55800

rpc.statd 1277 rpcuser   11u  IPv6  11862      0t0  TCP *:56428 (LISTEN)

7. 找出谁查看了文件和目录:显示用户tecmint使用情况的命令# lsof -i -u tecmint

COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

bash    1839 tecmint  cwd    DIR  253,0    12288   15 /etc

ping    2525 tecmint  cwd    DIR  253,0    12288   15 /etc

8. 列出所有网络连接:

选项‘-i’显示所有监听(LISTENING)和建立(ESTABLISHED)等的网络链接。# lsof -i

COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rpcbind   1203     rpc    6u  IPv4  11326      0t0  UDP *:sunrpc

rpcbind   1203     rpc    7u  IPv4  11330      0t0  UDP *:954

rpcbind   1203     rpc   11u  IPv6  11336      0t0  TCP *:sunrpc (LISTEN)

avahi-dae 1241   avahi   13u  IPv4  11579      0t0  UDP *:mdns

avahi-dae 1241   avahi   14u  IPv4  11580      0t0  UDP *:58600

rpc.statd 1277 rpcuser   11u  IPv6  11862      0t0  TCP *:56428 (LISTEN)

cupsd     1346    root    6u  IPv6  12112      0t0  TCP localhost:ipp (LISTEN)

cupsd     1346    root    7u  IPv4  12113      0t0  TCP localhost:ipp (LISTEN)

sshd      1471    root    3u  IPv4  12683      0t0  TCP *:ssh (LISTEN)

master    1551    root   12u  IPv4  12896      0t0  TCP localhost:smtp (LISTEN)

master    1551    root   13u  IPv6  12898      0t0  TCP localhost:smtp (LISTEN)

sshd      1834    root    3r  IPv4  15101      0t0  TCP 192.168.0.2:ssh->192.168.0.1:conclave-cpp (ESTABLISHED)

httpd     1918    root    5u  IPv6  15991      0t0  TCP *:http (LISTEN)

httpd     1918    root    7u  IPv6  15995      0t0  TCP *:https (LISTEN)

clock-app 2362   narad   21u  IPv4  22591      0t0  TCP 192.168.0.2:45284->www.gov.com:http (CLOSE_WAIT)

chrome    2377   narad   61u  IPv4  25862      0t0  TCP 192.168.0.2:33358->maa03s04-in-f3.1e100.net:http (ESTABLISHED)

chrome    2377   narad   80u  IPv4  25866      0t0  TCP 192.168.0.2:36405->bom03s01-in-f15.1e100.net:http (ESTABLISHED)

9. 用进程号(PID)搜索使用情况:显示进程1使用情况。# lsof -p 1

COMMAND PID USER   FD   TYPE     DEVICE SIZE/OFF   NODE NAME

init      1 root  cwd    DIR      253,0     4096      2 /

init      1 root  rtd    DIR      253,0     4096      2 /

init      1 root  txt    REG      253,0   145180 147164 /sbin/init

init      1 root  mem    REG      253,0  1889704 190149 /lib/libc-2.12.so

init      1 root  mem    REG      253,0   142472 189970 /lib/ld-2.12.so

10. 杀死特定用户的所有活动进程# kill -9 `lsof -t -u tecmint`

本文出自 “瑞航启程--下一代企业应用” 博客,谢绝转载!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值