Bash Wiki
Posts (Latest 30 updated) :
Read all
Contents:
  1. [Linux] Bash lsof Uso: Muestra archivos abiertos y procesos asociados
    1. Overview
    2. Usage
    3. Common Options
    4. Common Examples
    5. Tips

[Linux] Bash lsof Uso: Muestra archivos abiertos y procesos asociados

Overview

El comando lsof (List Open Files) se utiliza en sistemas Unix y Linux para mostrar una lista de todos los archivos abiertos y los procesos que los están utilizando. Esto es útil para diagnosticar problemas de sistema, liberar recursos o simplemente para obtener información sobre qué archivos están en uso.

Usage

La sintaxis básica del comando lsof es la siguiente:

lsof [opciones] [argumentos]

Common Options

  • -a: Combina múltiples criterios de búsqueda.
  • -c <nombre>: Muestra solo los archivos abiertos por procesos cuyo nombre coincide con <nombre>.
  • -u <usuario>: Muestra solo los archivos abiertos por el usuario especificado.
  • -p <PID>: Muestra solo los archivos abiertos por el proceso con el ID de proceso <PID>.
  • +D <directorio>: Muestra archivos abiertos en el directorio especificado y sus subdirectorios.

Common Examples

  • Listar todos los archivos abiertos:
    lsof
    
  • Listar archivos abiertos por un usuario específico:
    lsof -u nombre_usuario
    
  • Listar archivos abiertos por un proceso específico:
    lsof -p 1234
    
  • Listar archivos abiertos en un directorio específico:
    lsof +D /ruta/al/directorio
    
  • Combinar criterios para listar archivos abiertos por un proceso y un usuario:
    lsof -c nombre_proceso -u nombre_usuario
    

Tips

  • Utiliza sudo para obtener información completa sobre todos los procesos, ya que algunos pueden estar restringidos a usuarios no privilegiados.
  • Filtra los resultados con grep para encontrar información específica más rápidamente. Por ejemplo:
    lsof | grep nombre_archivo
    
  • Recuerda que lsof puede generar una gran cantidad de información, así que considera redirigir la salida a un archivo para su análisis posterior:
    lsof > archivos_abiertos.txt