lsof 명령어는 시스템에서 실행중인 프로세스가 열고있는 파일 정보를 출력해줌
기본적으로 설치되지 않은 OS(운영체제)는 별도로 설치가 필요하다. 그리고, Linux, Unix OS에 따라 옵션이 약간 상이할 수 있음에 주의해야 한다.
자주 사용되는 옵션은 아래 예제와 같다.
[예제1] 특정 파일을 열고있는 모든 프로세스 목록을 출력함
$ lsof /var/log/syslog COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME rsyslogd 488 syslog 1w REG 8,1 1151 268940 /var/log/syslog |
[예제2] 특정 프로세스가 열고 있는 파일 목록을 출력함
$ lsof -c init COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 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 |
[예제3] 특정 프로세스 ID가 열고 있는 파일 목록을 출력함
$ lsof -p 1753 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 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 |
참고로, AIX에서는 열고있는 라이브러리를 알기 위해서는 svmon 및 ncheck 명령어도 함께 이용해야 함
[예제4] 네트워크 연결로 열어진 fd 목록을 출력함
$ lsof -i COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME avahi-dae 515 avahi 13u IPv4 6848 0t0 UDP *:mdns avahi-dae 515 avahi 16u IPv6 6851 0t0 UDP *:52060 cupsd 1075 root 5u IPv6 22512 0t0 TCP ip6-localhost:ipp (LISTEN) |
참고로, -i4와 -i6 옵션은 각각 IP4와 IP6 목록만 조회됨
[예제5] 특정 port 번호로 listening 하는 프로세스 목록을 출력함. -i 다음에 콜론(:)임에 주의 (Linux)
$ lsof -i :25 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME exim4 2541 Debian-exim 3u IPv4 8677 TCP localhost:smtp (LISTEN) |
[예제6] TCP와 UDP로 연결되어 있는 프로세스 목록을 출력함
$ lsof -i tcp; lsof -i udp; |
[참조] http://www.thegeekstuff.com/2012/08/lsof-command-examples/
'OS > AIX' 카테고리의 다른 글
[명령어] errrpt 사용법 (0) | 2018.07.25 |
---|---|
[Tips] 장치 관련 명령어(lsdev, lscfg, lsattr) (0) | 2018.03.31 |
[정보] Keepalive 관련 파라미터 (0) | 2018.01.20 |
[정보] AIX oslevel 명령어 (0) | 2017.12.03 |
[Tips] AIX에서 socket 사용 중인 프로세스 찾기 (0) | 2017.07.24 |