Получить процесс, занимающий порт в Solaris 10 (альтернатива pfiles)

В настоящее время я использую pfiles, чтобы получить процесс, занимающий определенный порт в Solaris10, но это вызывает проблемы при параллельном запуске.

проблема в том, что pfiles нельзя запускать параллельно для одного и того же pid. второй вернется с сообщением об ошибке. pfiles: процесс отслеживается:

Есть ли альтернатива pfiles для получения процесса, занимающего порт в Solaris. ИЛИ может помочь любая информация об OS API для получения информации о порте/процессе в Solaris.


person Rakesh    schedule 16.08.2011    source источник
comment
Зачем вам нужно запускать несколько pfiles параллельно?   -  person jlliagre    schedule 16.08.2011
comment
Проблема в том, что мое приложение использует pfiles для анализа занятых портов. Между тем, если pfiles запускается вручную или каким-либо другим приложением ... или даже несколькими экземплярами моего приложения, оно не работает.   -  person Rakesh    schedule 17.08.2011
comment
Если это не удается, просто подождите пару секунд и повторите попытку.   -  person jlliagre    schedule 17.08.2011


Ответы (1)


Обходным путем было бы использование некоторого механизма блокировки, чтобы избежать этого.

В качестве альтернативы вы можете установить lsof из бесплатного репозитория и посмотреть, поддерживает ли он параллелизм (я думаю, что поддерживает).

Я только что протестировал pfiles Solaris 11 Express, и, похоже, эта проблема не проявляется.

person jlliagre    schedule 16.08.2011