Como listar arquivos e analisar seu sistema com o lsof do Linux

A ferramenta do Linux, lsof, permite o monitoramento rápido do sistema e a detecção de problemas. Ela fornece uma lista de arquivos abertos, permitindo que você a otimize para suas necessidades específicas usando filtros e opções.

O que é o Linux lsof?

Para monitorar e analisar seu sistema Linux, o lsof é uma ferramenta fácil de usar. O programa, desenvolvido e publicado em 1994 por Vic Abell, é de código aberto e faz parte da instalação padrão de várias distribuições do Linux, como Debian ou Ubuntu. lsof significa “List open files” (Listar arquivos abertos). O programa fornece informações sobre os tipos de arquivos que estão abertos no momento ou que foram abertos anteriormente por processos em execução. Isso inclui arquivos comuns, diretórios, soquetes, unidades e portas. Ele apresenta uma lista clara e organizada dos diferentes processos e arquivos associados.

Como o Linux lsof funciona?

Se o lsof não estiver presente em seu sistema, basta instalá-lo com este comando do Linux:

$ apt-get install lsof
bash

Uma vez instalado, o Linux lsof permite que você obtenha uma visão geral abrangente dos processos ativos em seu computador. Isso é possível porque, em sistemas do tipo Unix, tudo é tratado como um arquivo. Como resultado, você pode usar o lsof para determinar quais processos podem acessar um arquivo específico.

Como é a sintaxe do Isof?

Deseja usar o lsof? Esta é a sintaxe básica do comando correspondente:

$ lsof [Option] <Format>
bash

Embora seja possível usar o lsof sem opções ou filtros, isso não é aconselhável. A saída resultante seria extensa e difícil de interpretar.

Quais opções e filtros estão disponíveis no lsof do Linux?

o lsof compreende várias opções de saída. As mais importantes são:

  • -F: Essa opção garante que todos os resultados sejam gerados em uma única coluna.
  • -l: essa opção permite exibir o ID do usuário em vez do nome.
  • -n: Ao usar essa opção, os endereços IP correspondentes são gerados em vez de nomes de host.
  • -P: é assim que os números das portas são exibidos em vez dos nomes dos serviços.
  • -r [x]: essa opção garante que a saída seja reexecutada a cada x segundos.
  • -t: Com essa opção, apenas uma lista de PIDs (Process Identifier) é gerada.

Além disso, o lsof conhece várias opções de filtro. As mais comuns são:

  • -a: Essa é uma operação AND lógica em vez da operação OR; é usada por padrão.
  • -c [Process]: Descubra qual arquivo é usado por qual processo.
  • +D /file/user: Esse filtro fornece informações sobre um diretório específico e seu usuário.
  • /dev/drive: Use esse filtro para verificar uma unidade específica.
  • -i [TCP/UDP ou endereço IP ou porta alternativos]: Fornece informações sobre quais processos usam quais serviços de rede.
  • +L1: Use esse filtro para obter informações sobre arquivos excluídos.
  • +p PID: Fornece informações sobre os arquivos usados por qual PID.
  • /path/file: Fornece informações sobre um arquivo específico.
  • -u [User]: Descubra qual usuário está usando quais arquivos.

Para que o Linux lsof está sendo usado?

Para concluir, mostraremos como e para que o lsof está sendo usado por meio de alguns exemplos.

$ lsof -u root
bash

Isso permite que você visualize todos os arquivos que o root mantém abertos no momento.

$ lsof /mount/path
bash

Frequentemente, o lsof é usado para identificar programas que impedem a execução do comando mount. Essa tarefa não poderá ser realizada se os arquivos relacionados ainda estiverem abertos.

$ lsof -n -i
bash

Esse comando permite que você liste todas as portas abertas.

Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top