root@OpenWrt:/tmp# lsof -p 1248
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
tinymappe 1248 root cwd DIR 0,14 0 193 /
tinymappe 1248 root rtd DIR 0,14 0 193 /
tinymappe 1248 root txt REG 31,5 218428 512 /bin/tinymapper
tinymappe 1248 root mem REG 31,5 355488 325 /lib/libuClibc-0.9.33.2.so
tinymappe 1248 root mem REG 31,5 78199 322 /lib/libgcc_s.so.1
tinymappe 1248 root mem REG 31,5 89279 461 /lib/libm-0.9.33.2.so
tinymappe 1248 root mem REG 31,5 857467 802 /usr/lib/libstdc++.so.6
tinymappe 1248 root mem REG 31,5 12502 338 /lib/libdl-0.9.33.2.so
tinymappe 1248 root mem REG 31,5 78650 324 /lib/libpthread-0.9.33.2.so
tinymappe 1248 root mem REG 31,5 203339 774 /usr/lib/libcurl.so.4.3.0
tinymappe 1248 root mem REG 31,5 88410 772 /usr/lib/libjson.so
tinymappe 1248 root mem REG 31,5 28966 327 /lib/ld-uClibc-0.9.33.2.so
tinymappe 1248 root 0r CHR 1,3 0t0 260 /dev/null
tinymappe 1248 root 1w FIFO 0,7 0t0 1753 pipe
tinymappe 1248 root 2w FIFO 0,7 0t0 1753 pipe
tinymappe 1248 root 3r CHR 1,9 0t0 264 /dev/urandom
tinymappe 1248 root 4u sock 0,5 0t0 2152 can't identify protocol
tinymappe 1248 root 5u inet 2153 0t0 UDP *:8989
tinymappe 1248 root 6u 0000 0,8 0 12 anon_inode
tinymappe 1248 root 7u 0000 0,8 0 12 anon_inode
tinymappe 1248 root 8r FIFO 0,7 0t0 1215 pipe
tinymappe 1248 root 9r FIFO 0,7 0t0 1751 pipe
tinymappe 1248 root 10w FIFO 0,7 0t0 1753 pipe
tinymappe 1248 root 11u netlink 0t0 2154 KOBJECT_UEVENT
tinymappe 1248 root 12u 0000 0,8 0 12 anon_inode
tinymappe 1248 root 13u unix 0x86702c80 0t0 2155 socket
tinymappe 1248 root 14u CHR 188,10 0t0 317 /dev/ttyUSB10
tinymappe 1248 root 15u CHR 188,1 0t0 3762 /dev/ttyUSB1
tinymappe 1248 root 18u inet 4259 0t0 UDP 10.38.80.128:53197->47.47.47.91:8989
tinymappe 1248 root 19u inet 2891 0t0 UDP 10.9.55.170:39210->47.47.47.91:8989
tinymappe 1248 root 20u inet 4204 0t0 UDP 10.9.47.225:60753->47.47.47.91:8989
tinymappe 1248 root 21u raw 0t0 100005 00000000:0001->00000000:0000 st=07
参数详解:
COMMAND:进程的名称
PID:进程标识符
USER:进程所有者
FD:文件描述符,应用程序通过文件描述符识别该文件。如cwd、txt等
TYPE:文件类型,如DIR、REG等
DEVICE:指定磁盘的名称
SIZE:文件的大小
NODE:索引节点(文件在磁盘上的标识)
NAME:打开文件的确切名称
FD列中的文件描述符:
cwd值表示应用程序的当前工作目录,这是该应用程序启动的目录,除非它本身对这个目录进行更改,txt类型的文件是程序代码,如应用程序二进制文件本身或共享库,如上列表中显示的/sbin/init程序。其次数值表示应用程序的文件描述符,这是打开该文件时返回的一个整数。如上的最后一行文件/dev/initctl,其文件描述符为 10。
u 表示该文件被打开并处于读取/写入模式,而不是只读 ? 或只写 (w) 模式。同时还有大写 的W 表示该应用程序具有对整个文件的写锁。该文件描述符用于确保每次只能打开一个应用程序实例。初始打开每个应用程序时,都具有三个文件描述符,从0到2,分别表示标准输入、输出和错误流。所以大多数应用程序所打开的文件的FD都是从3开始。
Type列:
文件和目录分别称为REG和DIR。
CHR表示字符;(fopen,打开文件)
BLK表示块设备;
UNIX、FIFO和IPv4,分别表示UNIX 域套接字、先进先出(FIFO)队列和网际协议(IP)套接字。
FIFO表示先进先出;(popen,pipe)
inet表示网际协议(IP)套接字tcp/udp;(socket)
netlink表示netlink