El comando lsof tarda demasiado para una identificación de proceso en particular

El comando lsof tarda demasiado para una identificación de proceso en particular

Tengo Centos 6.7 ejecutando una aplicación Java a través de un programa contenedor. Así que primero ejecuté esto.

lsof -p 15200 | wc -l and I got the results immediately as 200

La siguiente vez que ejecuté esto, lsof -p 15232 | wc -lsigo tardando demasiado y nunca generé ningún resultado. ¿Qué otro método puedo utilizar para obtener el total de archivos abiertos? Necesito saberlo porque mi sistema sigue bloqueándose después de cierto tiempo. Quizás necesite aumentar el tamaño del archivo abierto.

Respuesta1

Puede obtener los archivos numéricos abiertos por un proceso identificado por un PID, por ejemplo 15232, haciendo:

ls -l /proc/15232/fd | wc -l

desde elListas de Debian:

Estoy tratando de descubrir el significado de:

/proc/$PID/fd/*

archivos.

Estos son enlaces que apuntan a los archivos abiertos del proceso cuyo pid es $PID. Fd significa "descriptores de archivos", que es un número entero que identifica cualquier entrada o salida de un programa en sistemas tipo UNIX.

Aquí también es donde el lsofcomando bebe la información para brindarle los archivos de un proceso.

Esta es una característica del kernel de Linux y es independiente de la distribución.

información relacionada