41 Melhores exemplos de comando lsof do Linux (como identificar arquivos abertos) |
|
Aqui estão 41 exemplos que mostram vários usos do comando lsof do Linux: Uso básico: 1. `lsof`:Lista todos os arquivos abertos no sistema, incluindo seu ID de processo (PID), descritor de arquivo, caminho de arquivo e outros detalhes. 2. `lsof `:Lista todos os arquivos abertos por um processo específico com o PID fornecido. Listando informações específicas do arquivo: 3. `lsof -a `:Lista todos os processos que acessam o arquivo especificado. 4. `lsof -p -a `:Verifica se um arquivo específico foi aberto por um processo específico. 5. `lsof -c `:Lista todos os arquivos abertos para processos com o nome fornecido. Saída de filtragem: 6. `lsof -w `:Lista apenas processos com arquivos abertos que correspondem ao padrão especificado. 7. `lsof -F `:Filtra a saída com base no tipo de descritor de arquivo (por exemplo, f para arquivos regulares, d para diretórios, p para pipes). 8. `lsof -i :`:Filtra processos que estão escutando em um endereço IP e porta específicos. 9. `lsof -s `:Filtra processos com base em seu estado atual (por exemplo, R para execução, S para suspensão). Classificando e limitando a saída: 10. `lsof -g
`:Agrupa arquivos abertos por tamanho de arquivo ou ID de processo, dependendo do grupo especificado. 11. `lsof -l `:Limita a saída ao número especificado de linhas. 12. `lsof -L `:Classifica a saída por uma coluna específica (por exemplo, PID, COMMAND, SIZE, FD, MODE, TYPE). Opções especiais: 13. `lsof -h`:Exibe o menu de ajuda com informações detalhadas sobre todas as opções disponíveis. 14. `lsof -n `:Não resolve endereços numéricos ou números de porta. 15. `lsof -R`:Lista recursivamente todos os arquivos abertos, seguindo links simbólicos e dispositivos. 16. `lsof -P`:Exibe informações do processo (PID, PPID, COMMAND) na saída. 17. `lsof -u `:Filtra processos com base no usuário que os possui. Outros comandos úteis: 18. `lsof -i :8080 -n -P`:Lista todos os processos que escutam na porta 8080, incluindo seus PIDs, PIDs pais e comandos. 19. `lsof -a \| grep `:Pesquisa na saída de lsof uma string de texto específica. 20. `lsof -u root -t `:Encontra o PID de um comando executado como usuário root. 21. `lsof -R /tmp/file -f`:Lista todos os arquivos abertos no diretório /tmp/file, seguindo links simbólicos e dispositivos. Filtragem avançada: 22. `lsof -i TCP:LISTEN -c `:Filtra conexões TCP de escuta para um programa específico. 23. `lsof +c 0 -d 10`:Lista os processos com o descritor de arquivo 10 aberto. 24. `lsof +r1 -n +a`:Lista processos que possuem arquivos abertos com acesso de leitura e gravação e inclui seus endereços IP. 25. `lsof -u ninguém -g pid`:Agrupa processos por PID, filtrando os processos pertencentes ao usuário “ninguém”. Combinando lsof com outros comandos: 26. `lsof | head`:Exibe as primeiras linhas da saída. 27. `lsof -u root -t sshd -F p \| top -b -p`:Combina os comandos lsof e top para localizar e classificar processos pertencentes ao usuário root que executa o daemon sshd e, em seguida, exibe-os em uma interface semelhante a top. 28. `lsof | grep | wc -l`:Conta o número de processos com o nome especificado. 29. `lsof -i :22 -c sshd | tr -s ' ' "\n" \| uniq -c`:Conta combinações exclusivas de endereços IP e portas usadas pelo sshd. Monitoramento em tempo real: 30. `watch -c lsof -F p | grep httpd`:Monitora continuamente processos com portas abertas usadas pelo processo httpd. 31. `watch -g "lsof +e -u root -F n -l 10" -s 5`:Observa novos arquivos abertos pelo usuário root, atualizando a saída a cada 5 segundos. Diversos: 32. `lsof -l -w *:8080`:Lista conexões TCP de escuta na porta 8080 junto com seus descritores de arquivo. 33. `lsof -n +i@ -P`:Lista processos com conexões de rede abertas, incluindo seus PIDs, PPIDs e comandos. 34. `lsof -E -a +t`:Exibe informações estendidas sobre arquivos abertos de um programa específico, incluindo direitos de acesso e sinalizadores. 35. `lsof -c cron|awk '{ print $1,$9 }'`:Extrai PIDs e abre nomes de arquivos para processos iniciados pelo daemon cron. 36. `lsof -a -d3 \| egrep 'deleted'`:Procura arquivos que foram excluídos, mas ainda possuem identificadores de arquivo abertos. Opções adicionais: 37. `lsof -k`:Listagem baseada em kernel (requer privilégios de root). 38. `lsof -o`:Omite informações de chamada do sistema da saída. 39. `lsof -S `:Selecione o tipo de estatística a ser exibida (por exemplo, relacionada à memória, E/S de arquivo, etc.). 40. `lsof -t `:Lista informações apenas sobre o PID especificado, incluindo atributos de arquivo estendidos. 41. `lsof -x `:Exclua processos que não possuem o arquivo fornecido aberto. Esses exemplos ilustram várias maneiras de usar o comando lsof para identificar e monitorar arquivos abertos, processos e conexões de rede, tornando-o uma ferramenta versátil para solução de problemas de sistema, análise de segurança e tarefas de otimização de desempenho.
|