lsof – Ferramenta de diagnóstico para arquivos abertos

No dia a dia sempre temos muitos arquivos abertos em execução, no entanto, às vezes temos a necessidade de verificar informação de determinado arquivo, assim veremos com o lsof os detalhes de determinados arquivos abertos como caminhos, processos e usuários.

O utilitário para listar arquivos abertos lsof é uma ferramenta de diagnóstico específica para Unix. Seu nome vem do inglês List Open Files (Lista Arquivos abertos), e ela faz exatamente isso. Lista informação sobre qualquer arquivo que esteja aberto, por processos rodando atualmente no sistema.

lsof – Ferramenta de diagnóstico para arquivos abertos

Para lista os arquivos abertos e os processos correspondentes, devemos ter privilégios de root (ou sudo) que são necessários para listar os arquivos abertos por outros usuários. Para mais informações visite o ManPage lsof.

Veja abaixo alguns exemplos de uso com o comando lsof.

  1. Lista os arquivos abertos
$ sudo lsof

  1. Encontre os processos que têm um determinado arquivo aberto.
$ sudo lsof /usr/bin/dockerd

  1. Encontre o processo que abriu uma porta de Internet local.
$ sudo lsof -i :22

  1. Exibe apenas o ID do processo (PID).
$ sudo lsof -t /usr/bin/dockerd

  1. Liste arquivos abertos por determinado usuário.

Nesse exemplo estamos filtrando o processo do dockerd com o grep.

$ sudo lsof -u root | grep dockerd

  1. Liste os arquivos abertos por um determinado comando ou processo.
$ sudo lsof -c dockerd

  1. Liste arquivos abertos por um determinado processo, dado seu PID.
$ sudo lsof -p 6619

  1. Liste os arquivos abertos em um diretório.
$ sudo lsof +D /usr/bin/

  1. Encontre o processo que está escutando em uma porta TCP local.
$ sudo lsof -iTCP:22 -sTCP:LISTEN

  1. Listar todas as conexões de rede.
$ sudo lsof -i

Essa dica tem o intuito de ajudar a colher mais informações detalhadas de determinado arquivo em uso, assim fazer o diagnóstico e tomar a ação necessária em incidente se esse for o caso.

Até a próxima!!!

Share This Article
Usuário do GNU/Linux desde 2004, graduado em Sistemas de Informação, entusiasta na cultura DevOps.
Sair da versão mobile