状态 - lsof - 看进程、端口
lsof 的英文名称是:ls open file 中文名称是:显示文件打开句柄工具
由于Linux服务器使通过文件来表示功能,lsof命令能够查看Linux服务器端口、进程的文件打开状态
包括打开的文件名字、打开文件的进程,进程打开的端口(TCP、UDP)
lsof 命令
命令 |
解释 |
lsof |
全部占用 |
lsof -i:8080 |
查看8080端口占用 |
lsof abc.txt |
显示开启文件abc.txt的进程 |
lsof -c ssh |
显示abc进程现在打开的文件 |
lsof -c -p 1234 |
列出进程号为1234的进程所打开的文件 |
lsof -p 1234 -p 1235 |
列出进程号为1234、1235的进程所打开的文件 |
lsof -g gid |
显示归属gid的进程情况 |
lsof /var/log/syslog |
文件占用 |
lsof +d /usr/local/ |
显示目录下被进程开启的文件 |
lsof +D /usr/local/ |
同上,但是会搜索目录下的目录,时间较长 |
lsof -d 4 |
显示使用fd为4的进程 |
lsof -u chu |
用户使用 限定USER列 |
lsof -u ^chu |
用户排除使用 限定USER列 |
lsof -i -U |
显示所有打开的端口和UNIX domain文件 |
lsof -i |
显示所有网络端口 |
lsof -i:8080 |
网络端口 |
lsof -i4 |
网络端口IPv4 |
lsof -i6 |
网络端口IPv6 |
lsof -i tcp |
tcp |
lsof -i udp |
udp |
lsof
全部占用
指的是展示全部Linux打开的文件
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
|
|
|
cwd – Current Working Directory 当前位置 |
REG – Regular File 普通文件 |
|
|
|
|
|
|
|
txt – Text file 文本文件 |
DIR – Directory 文件夹 |
|
|
|
|
|
|
|
mem – Memory mapped file 内存映射文件 |
FIFO – First In First Out 先入先出文件(一般为管道文件) |
|
|
|
|
|
|
|
mmap – Memory mapped device 内存映射设备 |
CHR – Character special file 字符串文件 |
|
|
|
|
|
|
|
NUMBER – r for read, w for write, u for read and write. 权限数字表示 |
|
|
|
|
|
init |
1 |
root |
cwd |
DIR |
8,1 |
4096 |
2 |
/ |
init |
1 |
root |
txt |
REG |
8,1 |
124704 |
917562 |
/sbin/init |
init |
1 |
root |
0u |
CHR |
1,3 |
0t0 |
4369 |
/dev/null |
init |
1 |
root |
1u |
CHR |
1,3 |
0t0 |
4369 |
/dev/null |
init |
1 |
root |
2u |
CHR |
1,3 |
0t0 |
4369 |
/dev/null |
init |
1 |
root |
3r |
FIFO |
0,8 |
0t0 |
6323 |
pipe |
lsof -c ssh -c init
-c 进程,可以看多个 限定COMMAND列
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
init |
1 |
root |
txt |
REG |
8,1 |
124704 |
917562 |
/sbin/init |
init |
1 |
root |
mem |
REG |
8,1 |
1434180 |
1442625 |
/lib/i386-linux-gnu/libc-2.13.so |
init |
1 |
root |
mem |
REG |
8,1 |
30684 |
1442694 |
/lib/i386-linux-gnu/librt-2.13.so |
ssh-agent |
1528 |
user |
1u |
CHR |
1,3 |
0t0 |
4369 |
/dev/null |
ssh-agent |
1528 |
user |
2u |
CHR |
1,3 |
0t0 |
4369 |
/dev/null |
ssh-agent |
1528 |
user |
3u |
unix |
0xdf70e240 |
0t0 |
10464 |
/tmp/ssh-sUymKXxw1495/agent.1495 |
lsof /var/log/syslog
文件占用 限定NAME列
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
rsyslogd |
448 |
syslog |
1w |
REG |
8,1 |
1151 |
263440 |
/var/log/syslog |
lsof +D /var/log/
目录下占用 限定NAME列
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
rsyslogd |
448 |
syslog |
1w |
REG |
8,1 |
1151 |
268240 |
/var/log/syslog |
rsyslogd |
448 |
syslog |
2w |
REG |
8,1 |
2405 |
269316 |
/var/log/auth.log |
console-k |
141 |
root |
9w |
REG |
8,1 |
10871 |
249339 |
/var/log/ConsoleKit/history |
lsof -u chu
用户使用 限定USER列
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
update-no |
1832 |
chu |
20r |
FIFO |
0,8 |
0t0 |
14526 |
pipe |
update-no |
1832 |
chu |
21w |
FIFO |
0,8 |
0t0 |
14526 |
pipe |
bash |
1991 |
chu |
cwd |
DIR |
8,1 |
4096 |
395678 |
/home/chu |
lsof -u ^chu
用户排除使用 限定USER列
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
update-no |
1832 |
asd |
20r |
FIFO |
0,8 |
0t0 |
14526 |
pipe |
update-no |
1832 |
asd |
21w |
FIFO |
0,8 |
0t0 |
14526 |
pipe |
bash |
1991 |
asd |
cwd |
DIR |
8,1 |
4096 |
395678 |
/home/asd |
lsof -p 1753
某个进程 限定PID列
lsof -p 1753 -p 1754
多个PID
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE/OFF |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
bash |
1753 |
lakshmanan |
cwd |
DIR |
8,1 |
4096 |
393571 |
/home/lakshmanan/test.txt |
bash |
1753 |
lakshmanan |
rtd |
DIR |
8,1 |
4096 |
2 |
/ |
bash |
1753 |
lakshmanan |
255u |
CHR |
136,0 |
0t0 |
3 |
/dev/pts/0 |
lsof -i:8080
网络端口
命令 |
解释 |
lsof -i -U |
显示所有打开的端口和UNIX domain文件 |
lsof -i |
显示所有网络端口 |
lsof -i:8080 |
网络端口 |
lsof -i4 |
网络端口IPv4 |
lsof -i6 |
网络端口IPv6 |
lsof -i tcp |
tcp |
lsof -i udp |
udp |
COMMAND |
PID |
USER |
FD |
TYPE |
DEVICE |
SIZE |
NODE |
NAME |
调用命令 |
进程ID |
用户 |
文件描述file description |
类型 |
指定磁盘的名称 |
文件的大小 |
索引节点(文件在磁盘上的标识) |
打开文件的确切名称 |
portmap |
2521 |
rpc |
3u |
IPv4 |
9508 |
|
UDP |
*:sunrpc |
portmap |
2521 |
rpc |
4u |
IPv4 |
9509 |
|
TCP |
*:sunrpc (LISTEN) |
rpc.statd |
2553 |
root |
3u |
IPv4 |
9622 |
|
UDP |
* :hmmp- ind |
rpc.statd |
2553 |
root |
6u |
IPv4 |
9598 |
|
UDP |
*:npmp-trap |
rpc.Statd |
2553 |
root |
7u |
IPv4 |
9625 |
|
TCP |
*:sco-inetmgr (LISTEN) |
sshd |
3219 |
root |
3u |
IPv6 |
12723 |
|
TCP |
*:ssh(LISTEN) |
cupad |
3228 |
root |
4u |
IPv4 |
12766 |
|
TCP |
localhost.localdomain:ipp (LISTEN) |
cupsd |
3228 |
root |
6u |
IPv4 |
12769 |
|
UDP |
*:ipp |
sendmail |
3261 |
root |
4u |
IPv4 |
12903 |
|
TCP |
localhost.localdomain: smtp (LISTEN) |