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.
- Lista os arquivos abertos
- Encontre os processos que têm um determinado arquivo aberto.
- Encontre o processo que abriu uma porta de Internet local.
- Exibe apenas o ID do processo (PID).
- Liste arquivos abertos por determinado usuário.
Nesse exemplo estamos filtrando o processo do dockerd com o grep.
- Liste os arquivos abertos por um determinado comando ou processo.
- Liste arquivos abertos por um determinado processo, dado seu PID.
- Liste os arquivos abertos em um diretório.
- Encontre o processo que está escutando em uma porta TCP local.
- Listar todas as conexões de rede.
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!!!