De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Felipe Kellermann
Data de Publicação: 16 de Junho de 2004
Nos sistemas baseados no 4.4BSD há uma ferramenta padrão que entrou na versão 4.3BSD-Tahoe, fstat(1). Não tem nada a ver com a fstat(2).
A idéia é a mesma que a do lsof. Na verdade, o lsof tenta ser uma versão portável do fstat: Listar descritores abertos. A diferença aqui é que o fstat é realmente um padrão nos sistemas BSD, e até por isso é bem mais simples.
Com essa lista detalhada de descritores nós podemos ver esses sockets. Por exemplo,
$ fstat|grep -E '(tcp|udp)' stdfk sshd 2048 6* internet stream tcp 0xd05fac84 10.0.1.2:22 <-- 10.0.0.1:1083 root sshd 6102 6* internet stream tcp 0xd05fac84 10.0.1.2:22 <-- 10.0.0.1:1083 root sshd 3043 4* internet6 stream tcp 0xd05fa9bc *:22 root sshd 3043 5* internet stream tcp 0xd05fab20 *:22 root inetd 16313 4* internet stream tcp 0xd05fa164 *:113 root inetd 16313 5* internet6 stream tcp 0xd05fa2c8 *:113 root inetd 16313 6* internet dgram udp *:69 root inetd 16313 7* internet dgram udp 127.0.0.1:512 root inetd 16313 8* internet6 dgram udp [::1]:512 root inetd 16313 9* internet stream tcp 0xd05fa42c *:13 root inetd 16313 10* internet6 stream tcp 0xd05fa590 *:13 root inetd 16313 11* internet stream tcp 0xd05fa6f4 *:37 root inetd 16313 12* internet6 stream tcp 0xd05fa858 *:37 root ftpd 16809 4* internet stream tcp 0xd05fa000 *:21 _syslogd syslogd 16861 5* internet dgram udp *:514 $
Aqui nós também podemos ver quem é o dono do processo, qual é o nome do processo, qual é o PID do processo. O próximo campo especificaria qual é o descritor que está associado à linha. No nosso caso nós temos um valor seguido de um asterisco, que indica que esse descritor é relativo a algum tipo de socket (Não é um inode. É um socket, FIFO, ou há algum erro).
A formatação dos próximos campos depende do domínio do protocolo. Aquele primeiro campo indica justamente qual é esse tipo de domínio. No segundo campo nós temos o tipo do socket. Terceiro, e aqui é interessante, são as flags que estão associadas a esse socket, em hexa. E depois segue com as informações que são específicas do tipo de protocolo.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários