fuser

fuser [options] nome...

onde nome pode ser um arquivo (executável ou não) ou um diretório.

São algumas das opções deste comando

-i : pede confirmação antes de matar um processo (usado junto com a opção -k).

-k : mata os processos que estão acessando o arquivo/diretório especificado.

-u : identifica o usuário de cada processo.

Comentários sobre as opções do comando

Por exemplo, para exibir os processos (com a identificação dos respectivos usuários) que estão usando o shell bash, o editor de texto vim e o diretório /home/aluno1, digite

fuser -u /bin/bash /bin/vim /home/aluno1

Uma possível saída para este comando é:

/bin/bash: 1113e(root) 1125e(aluno1) 1154e(aluno2)
/bin/vim: 1350e(aluno1)
/home/aluno1: 1125c(aluno1) 1350c(aluno1)

onde temos três processos usando o arquivo /bin/bash (1113, 1125 e 1154), apenas um processo usando o arquivo /bin/vim (1350) e dois processos usando o diretório /home/aluno1 (1125 e 1350). Ao lado do número de um processo (PID) temos uma letra e a identificação do usuário a quem pertence o processo. A letra que aparece logo após o PID representa o tipo de acesso, onde podemos ter, por exemplo,

c : diretório atual (a partir do qual o processo foi inicializado).

e : arquivo sendo executado pelo processo.

r : diretório raiz do sistema (ponto de inicialização do processo).

Note que, no exemplo acima, o processo 1350 aparece nas duas últimas linhas exibidas pelo comando fuser. Isto significa que o aplicativo vim foi chamado a partir do diretório /home/aluno1.

Observações

A lista completa dos processos em execução no sistema pode ser vista no diretório /proc.