Comando lsof - listar arquivos e processos abertos
Linux e Unix

Comando lsof - listar arquivos e processos abertos


lsof significa "listar arquivos abertos", e é um comando usado para retornar uma listagem de todos os arquivos abertos e dos processos que os abriram.
Um arquivo aberto pode ser um arquivo de disco, diretório, biblioteca, pipes, dispositivos e  sockets de rede que tenham sido abertos por um processo qualquer.
Por exemplo, podemos usar esse comando quando tentamos desmontar um disco e não conseguimos, pois algum arquivo, que desconhecemos, está em uso ainda. Como resolver o problema? Podemos listar os arquivos abertos e identificar os processos que os estão usando, e então, finalizá-los.
Essa ferramenta está disponível nos sistemas Linux, FreeBSD, Solaris e Mac OS X, entre outros.


Sintaxe:


lsof [opções]
Opções comuns:
lsof <enter>
Lista todos os arquivos abertos por todos os processos.


+D diretório
Procura todas as instâncias abertas do diretório listado e todos os arquivos e diretórios que ele contém


-i
Mostra uma lista de sockets de rede abertos


-i :n
Mostra as conexões abertas na porta n


-i [tcp|udp]
Mostra as conexões ativas usando TCP ou UDP


-u usuário
Mostra o que o usuário tem aberto


-p PID
Mostra os arquivos abertos pelo processo com PID especificado


-t
Retorna apenas os identificadores do processos (somente PIDs)


-c comando
Mostra quais arquivos e conexões de rede um comando está usando


Informações comumente retornadas pelo lsof são:
Consulte página de manual lsof(8) para ver mais detalhes.
Exemplos:
1. Mostrar os processos ativos no diretório /acesso. Usamos o comando lsof sem opções, e filtramos o resultado com grep:
# lsof | grep  /acesso
Veja que temos um arquivo chamado planilhas aberto com o programa vi. O PID do processo é 2312, trata-se de um arquivo regular (REG) e o arquivo está aberto para eitura e gravação (3u).


2. Listar todas as conexões ativas que usem o protocolo UDP:
# lsof -i UDP


3. Mostrar as conexões abertas na porta 931:
# lsof -i:931


4. Mostrar o que o usuário fabio possui aberto:
# lsof -u fabio


5. Mostrar quais arquivos e conexões de rede o comando ping usa após ser disparado por um usuário:
# lsof -c ping


6. Procura todas as instâncias abertas do diretório /root:
# lsof +D /root


7. Obter o tráfego IPv6 na máquina:
# lsof -i 6


8. Descobrir portas que estão aguardando conexões (LISTEN):
# lsof -i -s TCP:LISTEN
Funciona usando um grep também, como em lsof -i | grep LISTEN
9. Mostrar os arquivos abertos por todos os usuários EXCETO o usuário fabio. para isso usaremos o caractere ^ (expressão regular):
# lsof -u ^fabio


10. Matar todos os processos pertencentes ao usuário fabio de uma só vez:
# kill -9 $(lsof -t -u fabio)
Esse comando executa lsof com as opções -u (usuário) e -t (retorna apenas PIDs), e passa o resultado para o comando kill -9.

Há várias outras opções disponíveis para o comando lsof. Pesquise nas páginas de manual se quiser saber mais a respeito.



loading...

- Permissões De Acesso A Arquivos E Pastas Pelo Terminal No Linux
Permissões de acesso a arquivos e pastas no LinuxUsamos permissões no Linux para definir quem pode acessar arquivos e diretórios, e seu nível de acesso, que vai desde acesso total até permissão totalmente negada. Para estudarmos como funcionam as...

- Comando Wait - Esperando A Finalização De Um Job No Linux
Comando wait Podemos usar o comando wait para esperar a finalização de uma tarefa (job). Este comando recebe como argumentos um ou mais IDs de processos. É útil por exemplo quando estamos escrevendo scripts do shell e queremos que o script espere...

- Firewall Iptables- Parte 03 - Linux
Alguns exemplos de regras do iptables1. Vamos começar configurando as regras-padrão da tabela FILTER. Vamos descartar todos os pacotes que chegam ao servidor por meio da cadeia INPUT e liberar todos os pacotes originados no servidor por meio da cadeia...

- Verificando Processos Com Os Comandos Ps E Pstree No Linux
O comando ps gera um instantâneo dos processos atuais no terminal e permite mostrar informações sobre uma seleção dos processos ativos. Sintaxe:ps [opções]Há três estilos de opções disponíveis: 1. Opções padrão do Unix: podem ser agrupadas...

- Permissões De Acesso A Arquivos E Diretórios E Comando Chmod
O Linux / Unix possui um sistema de permissões de acesso a arquivos e diretórios relativamente complexo.Neste sistema, existem três tipos de permissões básicas: leitura, escrita (gravação) e execução, representados respectivamente pelos caracteres...



Linux e Unix








.