viernes, 2 de septiembre de 2016

Linux - Comando Lsof

La propia palabra Lsof ya nos dice lo que hace, “LS Open Files” . Nos ayuda a listar ficheros abiertos, y nos será super útil en determinadas situaciónes donde no sepamos qué carpetas tiene en uso una determinada herramienta.
1 – Ejecutándolo sin más, nos da una lista de los procesos activos y los ficheros usados:
nexolinux m3t4g4m3 # lsof
COMMAND  PID       USER   FD      TYPE     DEVICE  SIZE/OFF       NODE NAME
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

2- Podemos usarlo para saber qué procesos tiene cogidos un fichero:
nexolinux m3t4g4m3 # 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/sysloge

3 – Listar ficheros abiertos en un directorio ( +D directorio )
nexolinux m3t4g4m3 # lsof +D /var/log/

COMMAND   PID   USER  FD   TYPE DEVICE SIZE/OFF   NODE NAME
rsyslogd  488 syslog   1w   REG    8,1     1151 268940 /var/log/syslog
rsyslogd  488 syslog   2w   REG    8,1     2405 269616 /var/log/auth.log
console-k 144   root   9w   REG    8,1    10871 269369 /var/log/ConsoleKit/history

4 – Listar ficheros abiertos basados en procesos ( -c proceso )
nexolinux m3t4g4m3 # lsof -c ssh

COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
ssh-agent 1528 lakshmanan    1u   CHR        1,3      0t0    4369 /dev/null
ssh-agent 1528 lakshmanan    2u   CHR        1,3      0t0    4369 /dev/null
ssh-agent 1528 lakshmanan    3u  unix 0xdf70e240      0t0   10464 /tmp/ssh-sUymKXxw1495/agent.1495

5 – Listar ficheros abiertos por un usuario. ( -u ) 
nexolinux m3t4g4m3 # lsof -u m3t4g4m3

COMMAND    PID       USER   FD   TYPE     DEVICE SIZE/OFF       NODE NAME
update-no 1892 m3t4g4m3   20r  FIFO        0,8      0t0      14536 pipe
update-no 1892 m3t4g4m3   21w  FIFO        0,8      0t0      14536 pipe
bash      1995 m3t4g4m3  cwd    DIR        8,1     4096     393218 /home/m3t4g4m3

6 - Listar procesos abiertos por puerto. ( -i ) 
exolinux m3t4g4m3 # lsof -i :3000

COMMAND    PID       USER   FD   TYPE     DEVICE SIZE/OFF       NODE NAME
ruby    10975 root   12u  IPv4 103067      0t0  TCP server:3000 (LISTEN)

No hay comentarios:

Publicar un comentario