ss -p significado de saída

3

Eu uso o pacote ss no iproute2 para listar estatísticas de sockets. Usar a opção -p pode me fornecer informações sobre o processo. Você sabe o que significam os números mostrados? Eu posso ver que o primeiro é o PID, mas não o último.

Exemplo de saída:

ESTAB     0       0       192.168.1.2:59246  124.40.42.38:www    users:(("gweather-applet",1922,23))    
ESTAB     0       0       192.168.1.2:42612  72.14.213.16:imaps  users:(("thunderbird-bin",5553,45))
    
por Fish Monitor 08.06.2011 / 16:20

2 respostas

2

O segundo número é um número de descritor de arquivo associado a essa conexão no processo

    
por 08.06.2011 / 18:09
1

Como é mostrado na implementação de ss :

static int find_users(unsigned ino, char *buf, int buflen)
{
  struct user_ent *p;
  int cnt = 0;
  char *ptr;

  if (!ino)
    return 0;

  p = user_ent_hash[user_ent_hashfn(ino)];
  ptr = buf;
  while (p) {
    if (p->ino != ino)
        goto next;

    if (ptr - buf >= buflen - 1)
        break;

    snprintf(ptr, buflen - (ptr - buf),
         "(\"%s\",%d,%d),",
         p->process, p->pid, p->fd);
    ptr += strlen(ptr);
    cnt++;

  next:
    p = p->next;
  }

  if (ptr != buf)
    ptr[-1] = '
static int find_users(unsigned ino, char *buf, int buflen)
{
  struct user_ent *p;
  int cnt = 0;
  char *ptr;

  if (!ino)
    return 0;

  p = user_ent_hash[user_ent_hashfn(ino)];
  ptr = buf;
  while (p) {
    if (p->ino != ino)
        goto next;

    if (ptr - buf >= buflen - 1)
        break;

    snprintf(ptr, buflen - (ptr - buf),
         "(\"%s\",%d,%d),",
         p->process, p->pid, p->fd);
    ptr += strlen(ptr);
    cnt++;

  next:
    p = p->next;
  }

  if (ptr != buf)
    ptr[-1] = '%pre%';

  return cnt;
}
'; return cnt; }

o primeiro número é p- > pid e o segundo é p- > fd.

    
por 18.10.2017 / 15:26

Tags