lsof

lsof

์‹œ์Šคํ…œ์—์„œ ์—ด๋ฆฐ ํŒŒ์ผ ๋ชฉ๋ก์„ ์•Œ๋ ค์ฃผ๊ณ  ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์„ธ์Šค, ๋””๋ฐ”์ด์Šค ์ •๋ณด, ํŒŒ์ผ์˜ ์ข…๋ฅ˜ ๋“ฑ ์ƒ์„ธํ•œ ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ•ด ์ค€๋‹ค.

๋ฆฌ๋ˆ…์Šค์™€ ์œ ๋‹‰์Šค๋Š” ์ถ”์ƒํ™”๋œ ํŒŒ์ผ์‹œ์Šคํ…œ(VFS)์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ผ๋ฐ˜ ํŒŒ์ผ, ๋””๋ ‰ํ„ฐ๋ฆฌ, ๋„คํŠธ์›Œํฌ ์†Œ์ผ“, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ๋“ฑ๋„ ๋ชจ๋‘ ํŒŒ์ผ๋กœ ์ฒ˜๋ฆฌ๋˜๋ฉฐ lsof์—์„œ ์ƒ์„ธํ•œ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

[ec2-user@TEST ~]$ sudo lsof | head -n 30
COMMAND      PID    TID TASKCMD              USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd        1                             root  cwd       DIR              202,1       237       1024 /
systemd        1                             root  rtd       DIR              202,1       237       1024 /
systemd        1                             root  txt       REG              202,1    102904     479373 /usr/lib/systemd/systemd
systemd        1                             root  mem       REG              202,1    575493    8622906 /etc/selinux/targeted/contexts/files/file_contexts.bin
systemd        1                             root  mem       REG              202,1    906040    8526765 /usr/lib64/libm.so.6
systemd        1                             root  mem       REG              202,1   4513072    8599417 /usr/lib64/libcrypto.so.3.0.8
systemd        1                             root  mem       REG              202,1    107416    8526802 /usr/lib64/libz.so.1.2.11
systemd        1                             root  mem       REG              202,1   1297992    8527203 /usr/lib64/libp11-kit.so.0.3.0
systemd        1                             root  mem       REG              202,1   2385544    8526762 /usr/lib64/libc.so.6
systemd        1                             root  mem       REG              202,1     20264    8622907 /etc/selinux/targeted/contexts/files/file_contexts.homedirs.bin
systemd        1                             root  mem       REG              202,1     49608    8527180 /usr/lib64/libffi.so.8.1.2
systemd        1                             root  mem       REG              202,1     28672    8525287 /usr/lib64/libattr.so.1.1.2501
systemd        1                             root  mem       REG              202,1    646176    8524509 /usr/lib64/libpcre2-8.so.0.11.0
systemd        1                             root  mem       REG              202,1     32664    8525293 /usr/lib64/libcap-ng.so.0.0.0
systemd        1                             root  mem       REG              202,1     41176    8531076 /usr/lib64/libeconf.so.0.4.0
systemd        1                             root  mem       REG              202,1    178816    8524288 /usr/lib64/liblzma.so.5.2.5
systemd        1                             root  mem       REG              202,1    201856    8524349 /usr/lib64/libcrypt.so.2.0.0
systemd        1                             root  mem       REG              202,1    234640    8599170 /usr/lib64/libblkid.so.1.1.0
systemd        1                             root  mem       REG              202,1    288464    8599008 /usr/lib64/libmount.so.1.1.0
systemd        1                             root  mem       REG              202,1    176840    8525308 /usr/lib64/libselinux.so.1
systemd        1                             root  mem       REG              202,1    104456    8599511 /usr/lib64/libkmod.so.2.3.7
systemd        1                             root  mem       REG              202,1   3678904     479504 /usr/lib64/systemd/libsystemd-shared-252.16-1.amzn2023.0.2.so
systemd        1                             root  mem       REG              202,1     37040    8524310 /usr/lib64/libcap.so.2.48
systemd        1                             root  mem       REG              202,1    139480    8525297 /usr/lib64/libaudit.so.1.0.0
systemd        1                             root  mem       REG              202,1     70208    8598803 /usr/lib64/libpam.so.0.85.1
systemd        1                             root  mem       REG              202,1    127760    8527885 /usr/lib64/libseccomp.so.2.5.3
systemd        1                             root  mem       REG              202,1    108000    8519859 /usr/lib64/libgcc_s-11-20230605.so.1
systemd        1                             root  mem       REG              202,1   2224760     479503 /usr/lib64/systemd/libsystemd-core-252.16-1.amzn2023.0.2.so
systemd        1                             root  mem       REG              202,1     41256    8525289 /usr/lib64/libacl.so.1.1.2301

Command : ์‹คํ–‰ํ•œ ๋ช…๋ น์–ด

PID : ํ”„๋กœ์„ธ์Šค id

USER : ์‹คํ–‰ํ•œ ์‚ฌ์šฉ์ž

FD : File Descriptor, ํŒŒ์ผ์˜ ์ข…๋ฅ˜

  • cwd : current working directory

  • rtd : root directory

  • mem : memory-mapped file

  • txt : program text

Type : ํŒŒ์ผ ์ข…๋ฅ˜

  • DIR : ๋””๋ ‰ํ„ฐ๋ฆฌ

  • CHR : character Special File

  • REG : regular file

  • unix : ์œ ๋‹‰์Šค ๋„๋ฉ”์ธ ์†Œ์ผ“

Device : ์žฅ์น˜ ๋ฒˆํ˜ธ

Size/OFF : ํŒŒ์ผ์˜ ํฌ๊ธฐ๋‚˜ ์˜คํ”„์…‹

NODE : ๋…ธ๋“œ ๋ฒˆํ˜ธ

NAME : ํŒŒ์ผ๋ช…

์‚ฌ์šฉ์ž ์ง€์ •

[ec2-user@TEST ~]$ lsof -u ec2-user
COMMAND      PID     USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd   613825 ec2-user  cwd       DIR              202,1       237       1024 /
systemd   613825 ec2-user  rtd       DIR              202,1       237       1024 /

ํŠน์ • ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์„ธ์Šค ๋ณด๊ธฐ

[ec2-user@TEST ~]$ sudo lsof /var/log/nginx/access.log
COMMAND    PID  USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
nginx   646196  root    7w   REG  202,1        0 11153999 /var/log/nginx/access.log
nginx   646197 nginx    7w   REG  202,1        0 11153999 /var/log/nginx/access.log

ํŠน์ • ๋””๋ ‰ํ„ฐ๋ฆฌ ๋‚ด ์—ด๋ฆฐ ํŒŒ์ผ ๋ณด๊ธฐ

[ec2-user@TEST ~]$ sudo lsof +D /tmp
COMMAND    PID     USER   FD   TYPE             DEVICE SIZE/OFF    NODE NAME
node    613910 ec2-user   18u  unix 0x000000000250c8b1      0t0 2408268 /tmp/code-f61cc4b2-43b5-4cbb-ba28-443f73e4b2e6 type=STREAM (LISTEN)
node    613910 ec2-user   20u  unix 0x000000003225a130      0t0 2408272 /tmp/code-f61cc4b2-43b5-4cbb-ba28-443f73e4b2e6 type=STREAM (CONNECTED)
node    613969 ec2-user   19u  unix 0x0000000095bdcd42      0t0 2408271 /tmp/code-f61cc4b2-43b5-4cbb-ba28-443f73e4b2e6 type=STREAM (CONNECTED)

ํŠน์ • ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์„ธ์Šค ์ •๋ณด ๋ณด๊ธฐ

[ec2-user@TEST ~]$ sudo lsof -i TCP:22
COMMAND    PID     USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
sshd      2108     root    3u  IPv4   16956      0t0  TCP *:ssh (LISTEN)
sshd      2108     root    4u  IPv6   16966      0t0  TCP *:ssh (LISTEN)
sshd    613821     root    4u  IPv4 2407811      0t0  TCP ip-172-31-1-197.ap-northeast-2.compute.internal:ssh->:60514 (ESTABLISHED)
sshd    613836 ec2-user    4u  IPv4 2407811      0t0  TCP ip-172-31-1-197.ap-northeast-2.compute.internal:ssh->:60514 (ESTABLISHED)

ํŠน์ • ๋ช…๋ น์–ด๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ํฌํŠธ

-c ์˜ต์…˜์„ ์ฃผ๋ฉด ํ•ด๋‹น ๋ช…๋ น์–ด๊ฐ€ ์˜คํ”ˆํ•œ ํŒŒ์ผ ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

[ec2-user@TEST ~]$ sudo lsof -c nginx
COMMAND    PID  USER   FD      TYPE             DEVICE SIZE/OFF     NODE NAME
nginx   646196  root  cwd       DIR              202,1      237     1024 /
nginx   646196  root  rtd       DIR              202,1      237     1024 /
nginx   646196  root  txt       REG              202,1  1372272 11027912 /usr/sbin/nginx
nginx   646196  root  mem       REG              202,1  2269344  8524292 /usr/lib64/libstdc++.so.6.0.29
nginx   646196  root  mem       REG              202,1  2385544  8526762 /usr/lib64/libc.so.6

IPv4 ํฌํŠธ๋งŒ ํ‘œ์‹œ

-i ์˜ต์…˜ ๋’ค์— 4(IPv4)๋ฅผ ์ง€์ •ํ•˜์—ฌ ์‚ฌ์šฉ ์ค‘์ธ ํฌํŠธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

[ec2-user@TEST ~]$ sudo lsof -i 4 -n 
COMMAND      PID            USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
systemd-n   1938 systemd-network   16u  IPv4 2416326      0t0  UDP 172.31.1.197:bootpc 
sshd        2108            root    3u  IPv4   16956      0t0  TCP *:ssh (LISTEN)
chronyd     2137          chrony    5u  IPv4   17118      0t0  UDP 127.0.0.1:323 
sshd      613821            root    4u  IPv4 2407811      0t0  TCP 172.31.1.197:ssh->:60514 (ESTABLISHED)
sshd      613836        ec2-user    4u  IPv4 2407811      0t0  TCP 172.31.1.197:ssh->q:60514 (ESTABLISHED)
sshd      613836        ec2-user    9u  IPv4 2408252      0t0  TCP 127.0.0.1:48900->127.0.0.1:33097 (ESTABLISHED)
code-e170 613871        ec2-user    9u  IPv4 2408234      0t0  TCP 127.0.0.1:33097 (LISTEN)
code-e170 613871        ec2-user   11u  IPv4 2408253      0t0  TCP 127.0.0.1:33097->127.0.0.1:48900 (ESTABLISHED)
nginx     646196            root    8u  IPv4 2451817      0t0  TCP *:http (LISTEN)
nginx     646197           nginx    8u  IPv4 2451817      0t0  TCP *:http (LISTEN)

ํŠน์ • ์‚ฌ์šฉ์ž ์ œ์™ธ

์‚ฌ์šฉ์ž ์ง€์ • ์˜ต์…˜ -u์— ^๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํŠน์ • ์‚ฌ์šฉ์ž๋ฅผ ์ œ์™ธํ•  ์ˆ˜ ์žˆ๋‹ค.

[ec2-user@TEST ~]$ sudo lsof -u ^root | head -n 4
COMMAND      PID    TID TASKCMD              USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
systemd-r   1740                  systemd-resolve  cwd       DIR              202,1       237       1024 /
systemd-r   1740                  systemd-resolve  rtd       DIR              202,1       237       1024 /
systemd-r   1740                  systemd-resolve  txt       REG              202,1    573960     479023 /usr/lib/systemd/systemd-resolved

Last updated