Eu tenho um BusyBox ultra antigo (não pergunte o porquê) (BusyBox v1.01 (2008.12.19-21: 31 + 0000) Shell interno (ash)) no meu DreamBox. Gostaria de descobrir qual processo abriu qual conexão usando o netstat. Mas descobri que o netstat do BusyBox não contém a opção -p . Que outras possibilidades tenho para descobrir qual processo abriu (e está usando) o soquete correspondente?
10
Respostas:
Você pode encontrar as informações equivalentes na forma um pouco mais feia (também conhecida como hexadecimal) em
/proc/net/tcp
. Lá, você pode encontrar o inode da conexão, no qual você pode procurar/proc/$pid/fd/
.Por exemplo:
(No netstat normal, mas não no busybox netstat, a
-e
opção também fornece essas informações extras.)e
Você precisa de acesso root para o segundo passo.
Não é tão conveniente quanto a
-p
opção, obviamente, mas funciona em um vínculo. Pode ser com script, se necessário.fonte
6115
-lo e usá-lo desta forma: #: 277find /proc/ -type l | grep /fd/ | xargs ls -la 2>/dev/null | grep 6115
Isso pode não ajudar, se você não tiver a oportunidade de reconstruir o Busybox, mas no caso de ajudar alguém ...
O Busybox possui uma opção de configuração para dar suporte ao
-p
switch do Busyboxnetstat
. Consulte a opçãoCONFIG_FEATURE_NETSTAT_PRG
selecionada no menu busybox através de Utilitários de rede → netstat → Ativar saída do nome do programa / PID .fonte
Se você possui ou pode acessar
ss
seu dispositivo, ele também pode mostrar o PID:fonte