Comando lsof demorando muito para um ID de processo específico

Comando lsof demorando muito para um ID de processo específico

Eu tenho o Centos 6.7 executando o aplicativo Java por meio de um programa wrapper. Então, primeiro eu corri isso.

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

em seguida, executei isso, lsof -p 15232 | wc -lcontinuo demorando muito e nunca gerei nenhum resultado. Que outro método posso usar para obter o total de arquivos abertos? Preciso saber porque meu sistema continua travando depois de um certo tempo. Talvez precise aumentar o tamanho do arquivo aberto.

Responder1

Você pode obter os arquivos numéricos abertos por um processo identificado por um PID, por exemplo 15232, fazendo:

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

deListas Debian:

Estou tentando descobrir o significado de:

/proc/$PID/fd/*

arquivos.

São links que apontam para os arquivos abertos do processo cujo pid é $PID. Fd significa "descritores de arquivo", que é um número inteiro que identifica qualquer entrada ou saída de programa em sistemas do tipo UNIX.

É aqui também que o lsofcomando obtém as informações para fornecer os arquivos de um processo.

Este é um recurso do kernel Linux e é independente da distribuição.

informação relacionada