현재 실행하고 있는 파일의 목록을 확인하고 파일 정보와 프로세스 정보를 보여준다.

사용법 : lsof [옵션] [파일] 
-a : 파일을 선택하는데 AND 연산으로 대상을 보여준다. 
-c : 지정한 COMMAND 필드의 내용만 보여준다. 
-F : 지정한 구분자로 필드를 구분하여 보여준다. 
-g : 지정한 그룹 아이디를 사용하는 관련 프로세스를 보여준다. 
-i : 현재 사용되는 소켓 정보를 보여준다. 
-l : 로그인 네임 대신에 UID를 출력한다. 
-n : 호스트 이름 대신에 IP 주소를 보여준다. 
-P : 포트 서비스이름 대신에 포트 넘버를 보여준다. 
-r : 지정한 초의 주기로 반복해서 보여준다. 기본값은 15초이다. 
-s : 파일의 크기를 보여준다. 
-V : 자세한 정보를 보여준다. 
-?,h : 도움말을 보여준다. 

lsof 명령어는 현재 열려 있는 모든 파일들에 대한 자세한 표와 각각의 파일에 대한 소유자, 크기, 관련 프로세스 등의 정보를 보여준다.

# lsof |more 
COMMAND     PID   USER   FD   TYPE     DEVICE     SIZE      NODE NAME 
init          1   root  cwd    DIR        3,1     4096         2 / 
init          1   root  rtd    DIR        3,1     4096         2 / 
init          1   root  txt    REG        3,1    26920    798208 /sbin/init 
init          1   root  mem    REG        3,1    89547    342064 /lib/ld-2.2.5.s 
o 
init          1   root  mem    REG        3,1  1402035   2036003 /lib/i686/libc- 
2.2.5.so 
init          1   root   10u  FIFO        3,1              37958 /dev/initctl 
---------------------생략------------------ 

COMMAND 필드 중 sshd와 관련된 시스템에서 사용하는 파일들을 살펴보자.

lsof -c sshd 
COMMAND  PID USER   FD   TYPE  DEVICE    SIZE    NODE NAME 
sshd     699 root  cwd    DIR     3,1    4096       2 / 
sshd     699 root  rtd    DIR     3,1    4096       2 / 
sshd     699 root  txt    REG     3,1  260616  358439 /usr/sbin/sshd 
sshd     699 root  mem    REG     3,1   89547  342064 /lib/ld-2.2.5.so 
sshd     699 root  mem    REG     3,1   35698  342154 /lib/libpam.so.0.75 
sshd     699 root  mem    REG     3,1   12102  342086 /lib/libdl-2.2.5.so 
sshd     699 root  mem    REG     3,1   11174  342102 /lib/libutil-2.2.5.so 
sshd     699 root  mem    REG     3,1   59695  325861 /usr/lib/libz.so.1.1.4 
sshd     699 root  mem    REG     3,1   89424  342068 /lib/libnsl-2.2.5.so 
sshd     699 root  mem    REG     3,1  929382  342138 /lib/libcrypto.so.0.9.6b 
sshd     699 root  mem    REG     3,1 1402035 2036003 /lib/i686/libc-2.2.5.so 

-i 옵션을 사용하여 현재 열려있는 소켓 정보를 살펴 볼 수 있다. TCP와 UDP를 각각 지정하여 볼 수도 있다. 지금 시스템에서 NAME 필드의 *:서비스명으로 현재 서비스 대기 상태의 현황을 살 펴 볼 수있다.

# lsof -iTCP 
COMMAND    PID USER   FD   TYPE  DEVICE SIZE NODE NAME 
snmpd      657 root    4u  IPv4     886       TCP *:smux (LISTEN) 
sshd       699 root    3u  IPv4    1195       TCP *:ssh (LISTEN) 
mysqld     780 root    3u  IPv4    1297       TCP *:mysql (LISTEN) 
mysqld     794 root    3u  IPv4    1297       TCP *:mysql (LISTEN) 
mysqld     795 root    3u  IPv4    1297       TCP *:mysql (LISTEN) 
sendmail   796 root    4u  IPv4    1335       TCP *:smtp (LISTEN) 
mysqld     817 root    3u  IPv4    1297       TCP *:mysql (LISTEN) 
----------------중략--------------------------- 
named    10404 root   14u  IPv4 1060445       TCP 192.168.0.1:domain (LISTEN) 
named    10404 root   15u  IPv4 1060447       TCP localhost.localdomain:rndc (LISTEN) 
httpd    10605 root   27u  IPv4 1064911       TCP *:https (LISTEN) 
httpd    10605 root   28u  IPv4 1064912       TCP *:http (LISTEN) 
xinetd   29022 root    5u  IPv4 1274887       TCP *:pop3 (LISTEN) 
xinetd   29022 root    6u  IPv4 1274888       TCP *:ftp (LISTEN) 
2005/06/17 19:08 2005/06/17 19:08

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다