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.
La sintaxis básica del comando lsof
es la siguiente:
lsof [opciones] [argumentos]
-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.lsof
lsof -u nombre_usuario
lsof -p 1234
lsof +D /ruta/al/directorio
lsof -c nombre_proceso -u nombre_usuario
sudo
para obtener información completa sobre todos los procesos, ya que algunos pueden estar restringidos a usuarios no privilegiados.grep
para encontrar información específica más rápidamente. Por ejemplo:
lsof | grep nombre_archivo
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