Задать вопрос

Как узнать чем занят порт?

Периодически приходит письмо от exim (свой почтовый сервер)
exim paniclog /var/log/exim4/paniclog on moscow-battle.com has non-zero size, mail system might be broken. Up to 10 lines are quoted below.
 
2022-12-19 23:10:05 daemon_notifier_socket bind: Address already in use


netstat -tunlp | grep 25
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      280700/exim4
tcp6       0      0 :::25                   :::*                    LISTEN      280700/exim4


ТП ISPMgr ответила

Ошибка означает, что в момент перезапуска порт был ещё занят. Возможно что-то вызвало конфликт на
уровне системы - кто-то занял ipv6 на 25 порту.
---

2022-12-19 23:10:35 socket bind() to port 25 for address (any IPv6) failed: Address already in use: waiting 30s before trying again (8 more tries)

----
К сожалению ошибка не показывает, кто занял порт. Тут нужно проверять в момент
ошибки, кто занял порт вместо exim. Тут нужен мониторинг силами системного
администратора. По данному вопросу обратитесь к системному администратору или в
специализированные организации.


Что сделать, чтобы отмониторить?
  • Вопрос задан
  • 920 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Если сервис очень быстро перезапускается, особенно многопоточный то может возникнуть ситуация, что основной тред уже рухнул, а подчиненные еще нет. Вариант или kill -9, или немного подождать.
Ну а посмотреть, кто держит порт - netstat -anp | grep 25
Ответ написан
s1s4dm1n
@s1s4dm1n
sysadmin
curl cheat.sh/lsof

sudo lsof -i -P -n | grep LISTEN
sudo lsof -i :25
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы