Mostrar los archivos abiertos en nuestro Linux con lsof

Published:

Hoy vamos a ver un pequeño comando que sirve para mostrar rápidamente cuales son los archivos que un proceso (PID) o un usuario esta utilizando, el término lsof es la abreviatura de LiSt Open Files que como lo indica su nombre lista los archivos abiertos.

Si lanzamos el comando en la terminal (# lsof) veremos una lista bastante extensa pero a nosotros nos interesa saber lo siguiente, Command, PID, USER, FD, TYPE.

lsof1

Entonces detallemos que es cada columna

1- COMMAND: comando que se esta ejecutando

2- PID: id de proceso

3- USER: Usuario

4- FD: muestra una descripción que explicamos brevemente

  • cwd current working directory
  • rtd root directory
  • txt program text (code and data)
  • mem memory-mapped file

5- TYPE: tipo

  • DIR – Directory
  • REG – Regular file
  • CHR – Character special file.
  • FIFO – First In First Out

Bien, ahora voy a mostrar varios ejemplos de lo que podemos hacer con algunas capturas de pantalla y otras para que las puedan probar solo mencionando el comando con los parámetros.

Ejemplo1:

Ver los archivos que tiene un determinado PID.

Sabemos que para ver el PID de un determinado proceso haceos ps, y como quiero ver el que le corresponde a firefox hacemos:

# ps -A | grep firefox

Teniendo el PID, lanzo lsof y veamos su magia:

# lsof -p 3243

lsof2Ejemplo 2

Visualizar los puertos TCP y UDP así como las conexiones activas en el sistema, usando el parámetro -i

# lsof -i

lsof3Ejemplo 3

Ver los archivos que esta utilizando un determinado usuario

# lsof -u nksistemas

lsof4

Ejemplo 4

Buscar procesos que usan un determinado puerto ej, el puerto 22

# lsof -i TCP:22

Ejemplo 5

Ver archivos abiertos por un proceso o programa concreto

# lsof -c cupsd

Ejemplo 6

Mostrar procesos que usan IPv4 o IPV6

# lsof -i 4
# lsof -i 6

Ejemplo 7

Ver archivos abiertos por un rango de puertos

# lsof -i TCP:1-1024

Ejemplo 8

Ver archivos en uso por un usuario, en un directorio o path específico

# lsof -u nksistemas -a +D /bin

Para más ejemplos prácticos usar man lsof.

- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles

Ads Blocker Image Powered by Code Help Pro

Se detecto un bloqueador de publicidad!!!

Nuestro contenido es 100% gratuito, por favor colabora con nosotros, permite la publicidad y disfruta del contenido.