Para o Solaris, você pode usar pfiles <pid>
para ver quais portas de rede são abertas por um determinado processo. Usando um loop for em /proc/*
, você pode usar pfiles
em cada processo em execução para procurar a porta desejada. A desvantagem é que você precisará ser root
no Solaris 10 ou ser capaz de se tornar privilegiado ( pfexec pfiles
) no Solaris 11 para obter as informações.
Se você conseguir se tornar root
no host Solaris, poderá usar algo como:
PORT=22; for PID in /proc/*; do pfiles ${PID} |grep "port: ${PORT}" && echo ${PID}; done
Isso iterará o /proc/*
, filtrará a porta especificada e, se uma correspondência for encontrada, a ID do processo ( /proc/####
) será mostrada na próxima linha.