FUSER(1) | Comandos de usuário | FUSER(1) |
fuser - identifica processos usando arquivos ou soquetes
fuser [-fuv] [-a|-s]
[-4|-6] [-c|-m|-n space]
[ -k [-i] [-M] [-w]
[-SIGNAL] ] name ...
fuser -l
fuser -V
fuser exibe os PIDs de processos usando os arquivos ou sistemas de arquivos especificados. No modo de exibição padrão, cada nome de arquivo é seguido por uma letra que indica o tipo de acesso:
fuser retorna um código de retorno diferente de zero se nenhum dos arquivos especificados for acessado ou no caso de um erro fatal. Se pelo menos um acesso for encontrado, fuser retorna zero.
Para pesquisar processos usando soquetes TCP e UDP, o espaço de nomes correspondente deve ser selecionado com a opção -n. Por padrão, fuser procurará nos soquetes IPv6 e IPv4. Para alterar o comportamento padrão, use as opções -4 e -6. Os soquetes podem ser especificados pela porta local e remota e pelo endereço remoto. Todos os campos são opcionais, mas as vírgulas na frente dos campos ausentes devem estar presentes:
[porta_lcl][,[host_rmt][,[porta_rmt]]]
Valores simbólicos ou numéricos podem ser usados para endereços IP e números de porta.
fuser emite apenas os PIDs para stdout, todo o resto é enviado para stderr.
Os processos que acessam o mesmo arquivo ou sistema de arquivos várias vezes da mesma maneira são mostrados apenas uma vez.
Se o mesmo objeto for especificado várias vezes na linha de comando, algumas dessas entradas podem ser ignoradas.
fuser só pode ser capaz de coletar informações parciais, a menos que seja executado com privilégios. Como consequência, os arquivos abertos por processos pertencentes a outros usuários podem não ser listados e os executáveis podem ser classificados apenas como mapeados.
fuser não pode relatar sobre nenhum processo para o qual não tenha permissão para consultar a tabela do descritor de arquivo. O momento mais comum em que esse problema ocorre é ao procurar soquetes TCP ou UDP ao executar fuser como um usuário não root. Neste caso, fuser relatará nenhum acesso.
Instalar o fuser com root SUID evitará problemas associados a informações parciais, mas pode ser indesejável por razões de segurança e privacidade.
Os espaços de nomes udp e tcp e soquetes de domínio UNIX não podem ser pesquisados com kernels anteriores a 1.3.78.
Os acessos pelo kernel são mostrados apenas com a opção -v.
A opção -k funciona apenas em processos. Se o usuário for o kernel, fuser imprimirá um conselho, mas não fará nada além disso.
fuser will not see block devices mounted by processes in a different mount namespace. This is due to the device ID shown in the process' file descriptor table being from the process namespace, not fuser's; meaning it won't match.
fuser -m /dev/sgX vai mostrar (ou matar com o sinalizador -k) todos os processos, mesmo se você não tiver aquele dispositivo configurado. Pode haver outros dispositivos para os quais ele também faz isso.
A opção de montagem -m vai corresponder a qualquer arquivo dentro do mesmo dispositivo que o arquivo especificado, use a opção -M também se você pretende especificar apenas o ponto de montagem.
fuser will not match mapped files, such as a process' shared libraries if they are on a btrfs(5) filesystem due to the device IDs being different for stat(2) and /proc/<PID>/maps.
kill(1), killall(1), stat(2), btrfs(5), lsof(8), mount_namespaces(7), pkill(1), ps(1), kill(2).
2022-11-02 | psmisc |