Previous Entry Поделиться Next Entry
Кто устанавливает соединения??
dil wrote in ru_linux
Как определить, что это за процессы, если netstat в колонке "PID/Program name" показывает просто минусы ?
# netstat -ntp | grep de.st.ip.adr:9128  | grep -v TIME_WAIT
tcp        0    758 lo.ca.l.ip:44316           de.st.ip.adr:9128         ESTABLISHED -                   
tcp        0      1 lo.ca.l.ip:44317           de.st.ip.adr:9128         SYN_SENT    -                   
tcp        0      0 lo.ca.l.ip:44315           de.st.ip.adr:9128         ESTABLISHED -  


А соединений с тем сервером в состоянии TIME_WAIT вообще сотни, и у всех тоже минусы.
У соединений с другими серверами процессы в основном показываются, но почему-то тоже кроме TIME_WAIT.
Отчего такое может быть? И как определить, что это за процессы?
Метки:

  • 1
То есть, я правильно понимаю, что netstat это показывает, а lsof нет?

Ага. netstat показывает сокеты, даже если они уже не привязаны к процессам, а lsof - только привязанные.

Эээээ. Если учесть, что netstat читает /proc/net, а lsof -- /dev/kmem, есть ощущение, что поломалось что-то либо в procfs, либо в том, что пишет в /proc/net.

Похоже, в первом комментарии правильная идея - процесс(ы) отваливаются, а сокеты остаются.

Если бы сокеты оставались, lsof бы их увидел, как минимум -- он же действует квадратно-гнездовым методом: лезет в kernel memory и тупо сканит живую таблицу дескрипторов.
А вот почему процесс сдох, дескриптор вычищен (иначе lsof бы его увидел), а procfs об этом ни сном ни духом -- это интересно.

  • 1
?

Log in

No account? Create an account