Рейтинг: 5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Команда lsof для выяснения, какой процесс занимает порт TCP

Несколько раз случалось такое, что мне не удавалось стандартными средствами перезапустить NGiNX на сервере. Просто игнорировались все команды, и хоть ты тресни. Оставалось только одно средство — «убить» процесс командой kill, но для её запуска требуется знать PID процесса. И тут потребовалось перепробовать массу вариантов, как его узнать, пока я не наткнулся на полезную команду, которая есть в стандартном дистрибутиве Debian 9 lsof, которая и спасла в итоге ситуацию.



Как с помощью команды lsof выяснить процесс, который слушает нужный порт в Debian 9

Читать документацию по lsof пока нет желания, поэтому сразу к делу. Для того, чтобы определить, какой процесс в linux занимает 80-й порт, требуется ввести команду:

lsof -i :80 | grep LISTEN

Для того, чтобы узнать программы, слушающие другие порты, вместо 80, нужно указать номер нужного порта. Например, для порта 8080 команда будет выглядеть так:

lsof -i :8080 | grep LISTEN

Как узнать, какая программа слушает порт 22 (ssh) с помощью команды lsof

В качестве примера того, как и в каком формате выдаёт данные команда lsof, рассмотрим, что у нас в системе слушает ssh - порт 22:

root@server:~# lsof -i :22 | grep LISTEN
sshd     777 root    3u  IPv4  16470      0t0  TCP *:ssh (LISTEN)
sshd     777 root    4u  IPv6  16472      0t0  TCP *:ssh (LISTEN)
  • название процесса sshd
  • PID процесса 777
  • пользователь, под которым запущен процесс root

Как остановить процесс, который слушает порт на сервере

Узнав PID процесса, никто не помещает его остановить командой kill:

kill 777

Вместо 777 нужно ввести PID того, процесса, который требуется остановить (если больше ничего не помогает). Ну и для того, чтобы «убить» процесс наверняка, можно использовать опцию -9. Результат — всегда срабатывает:

kill -9 777

Но, лучше всё-таки, когда до kill дело не доходит и всё останавливается и запускается, в общем, реагирует по сценарию того процесса, которым требуется управлять.

Заберите ссылку на статью к себе, чтобы потом легко её найти ;)

Выберите, то, чем пользуетесь чаще всего:

Спасибо за внимание, оставайтесь на связи! Ниже ссылка на форум и обсуждение ; )

Войдите чтобы комментировать

Обсудить эту статью

INFO: Вы отправляете сообщение как 'Гость'