lunes, 26 de marzo de 2012

Entendiendo el comando lsof

El comando lsof en los sistemas tipo UNIX (GNU/Linux, AIX, Solaris, etc.) es una herramienta muy útil a la hora de monitorear nuestro sistema. Como su nombre lo indica (list open files) nos muestra todos los ficheros abiertos al momento en el sistema. Si recuerdan, en un post anterior lo utilizamos para ver los archivos flash que ya no se guardan en /tmp. Para todo SysAdmin es una herramienta indispensable, además de que nos ayuda a resolver problemas determinados.

Un fichero abierto puede ser un archivo regeular, un directorio, un archivo de bloques (dispositivos), una librería, etc. Un fichero específico o todos en un sistema de archivos será seleccionado por ruta.

En vez de una salida con formato, lsof producirá una salida en bruto que puede ser analizada por otros programas, como por ejemplo grep o awk. Esto podemos verlo con la opción -F al consultar la ayuda o el man de lsof.


Algunos ejemplos del comando lsof

Ver todos los ficheros abiertos
$ lsof
Ver los ficheros abiertos por usuario
$ lsof -u fraterneo
Ver los ficheros abiertos por un proceso (usando el PID del proceso)
$ lsof -p 7760
Ver los ficheros abiertos en una ruta específica
$ lsof +D /home/fraterneo
Para más detalles sobre el comando lsof lee su manual
$ man lsof

No hay comentarios:

Publicar un comentario