Освобождение порта TCP / IP?
netstat -tulnap показывает, какие порты используются. Как освободить порт в Linux?
Как уже говорили другие, вам придется убить все процессы, которые прослушивают этот порт. Самый простой способ сделать это — использовать команду fuser (1). Например, чтобы увидеть все процессы, прослушивающие запросы http на порту 80 (запустите от имени пользователя root или используйте sudo):
Если вы хотите убить их, просто добавьте опцию -k.
Чтобы убить определенный порт в Linux, используйте команду ниже
замените Port_Number вашим занятым портом.
Вы можете использовать tcpkill (часть dsniff пакета), чтобы уничтожить соединение, которое находится на нужном порту:
В типе терминала:
netstat -anp|grep «port_number»
Он покажет детали порта. Перейти к последнему столбцу. Это будет в этом формате. Например: — PID / Java
kill -9 PID. Worked on Centos5
и затем выполните:
Работал на Macbook
Команда «netstat —programs» выдаст вам информацию о процессе, если вы являетесь пользователем root. Тогда вам придется убить «оскорбительный» процесс, который вполне может начаться снова, просто чтобы вас раздражать :-).
Чего вы на самом деле пытаетесь достичь здесь? Решения могут отличаться в зависимости от процессов, содержащих эти порты.
Чтобы проверить все порты:
Чтобы закрыть открытый порт:
В обоих случаях вы можете использовать sudo команду при необходимости.
Убейте процесс, который прослушивает рассматриваемый порт. Я считаю, что netstat показывает вам идентификаторы процессов.
Если вы действительно хотите немедленно завершить процесс, вы отправляете ему сигнал KILL вместо сигнала TERM (последний — запрос на остановку, первый вступит в силу немедленно без какой-либо очистки). Это легко сделать:
Имейте в виду, однако, что в зависимости от программы, которую вы останавливаете, ее состояние может быть сильно повреждено при этом. Обычно вы хотите отправить сигнал KILL только тогда, когда обычное завершение не работает. Мне интересно, в чем заключается основная проблема, которую вы пытаетесь решить, и является ли убийство правильным решением.
Источник
Как убить процесс, работающий на определенном порту в Linux?
Я попытался закрыть tomcat, используя ./shutdown.sh от tomcat
16 ответов
этой fuser 8080/tcp напечатает вам PID процесса, связанного с этим портом.
и fuser -k 8080/tcp убьет этот процесс.
работает только на Linux. Более универсальным является использование lsof -i4 (или 6 для IPv6).
чтобы перечислить любой процесс, прослушивающий порт 8080:
чтобы убить любой процесс прослушивания порта 8080:
или более яростно:
( -9 соответствует SIGKILL — terminate immediately/hard kill сигнал: Вижу список сигналов уничтожения и какова цель опции -9 в команде kill?. Если сигнал не указан в kill , термин сигнал a.к. a. -15 или soft kill отправляется, чего иногда недостаточно убить процесс.).
используется grep java as tomcat использует java как их процессы.
он покажет список процессов с номером порта и идентификатором процесса
число перед /java — это идентификатор процесса. Теперь используйте kill команда, чтобы убить процесс
-9 подразумевает, что процесс будет насильственно убит.
вы можете использовать команду lsof. Пусть номер порта, как здесь 8090
эта команда возвращает список открытых процессов на этот порт.
чтобы освободить порт, убейте процесс, используя его (идентификатор процесса 75782).
Это сработало для меня. вот ссылка из оригинального поста: ссылке
Я бы добавил этот One-liner только для прослушивания определенного порта:
kill -9 $(lsof -t -i:3000 -sTCP:LISTEN)
Если вы хотите убить процесс, работающий на port number 8080, то сначала вам нужно найти 8080 port process identification number(PID), а затем убить его. Выполните следующую команду, чтобы найти 8080 номер порта PID:
- судо — команда для запроса прав администратора (id пользователя и пароль).
- lsof — список файлов(также используется для связанного списка процессов)
- — t — показать только ID процесса
- -Я — показать только интернет-соединения, связанные с процессом
- :8080 — показывать только процессы в этом номере порта
Теперь вы можете легко убить свой PID, используя следующую команду:
- kill-команда, чтобы убить процесс
- -9 — сильно
вы можете использовать одну команду, чтобы убить процесс на определенном порту, используя следующая команда:
Для больше вы можете увидеть следующую ссылку как убить процесс на определенном порту в linux
это печатает для stdout идентификаторы процессов всего, что работает на
он также печатает некоторые вещи в stderr, так:
затем мы можем предоставить эти идентификаторы процессов в kill команда:
вы также можете поместить это в функцию, если вы делаете это много:
чтобы узнать pid службы, работающей на определенном порту:
вы получите описание этого процесса. Теперь используйте kill или kill -9 pid. Легко убил.
Источник
Как убить процесс, работающий на определенном порту в Linux?
Я попытался закрыть tomcat с помощью ./shutdown.sh от tomcat
16 ответов:
этой fuser 8080/tcp выведет вам PID процесса, связанного с этим портом.
и fuser -k 8080/tcp убьет этот процесс.
работает только на Linux. Более универсальным является использование lsof -i4 (или 6 для IPv6).
чтобы перечислить любой процесс, прослушивающий порт 8080:
чтобы убить любой процесс прослушивания порта 8080:
или более яростно:
( -9 соответствует SIGKILL — terminate immediately/hard kill сигнал: Вижу список сигналов убийства и какова цель опции -9 в команде kill?. Если сигнал не указан в kill , термин сигнал a. k. a. -15 или soft kill отправляется, что иногда недостаточно чтобы убить процесс.).
используется grep java как tomcat использует java как их процессы.
он покажет список процессов с номером порта и идентификатором процесса
число перед /java — это идентификатор процесса. Теперь используйте kill команда убить процесс
-9 подразумевает, что процесс будет насильственно убит.
вы можете использовать команду lsof. Пусть номер порта, как здесь 8090
эта команда возвращает список открытых процессов на этот порт.
чтобы освободить порт, убейте процесс, используя его (идентификатор процесса 75782).
этот работал на меня. вот ссылка из оригинального поста: ссылке
Я бы добавил этот один лайнер только для прослушивания на определенном порту:
kill -9 $(lsof -t -i:3000 -sTCP:LISTEN)
Если вы хотите убить процесс, работающий на номер порта 8080, то сначала вам нужно найти идентификационный номер процесса порта 8080(PID), а затем убить его. Выполните следующую команду, чтобы найти номер порта 8080 PID:
- судо — команда для запроса прав администратора (идентификатор пользователя и пароль).
- lsof — список файлов(также используется для связанного списка процессов)
- — t — показать только идентификатор процесса
- -Я — показывать только процесс, связанный с подключением к интернету
- :8080 — показывать только процессы в этом номере порта
таким образом, теперь вы можете легко убить свой PID, используя следующую команду:
- убить-команда, чтобы убить процесс
- -9 — сильно
вы можете использовать одну команду, чтобы убить процесс на определенном порту, используя следующая команда:
для получения дополнительной информации вы можете увидеть следующую ссылку как убить процесс на определенном порту в linux
это выводит на stdout идентификаторы процессов всего, что работает на
он также печатает некоторые вещи в stderr, так:
затем мы можем предоставить эти идентификаторы процесса в kill команда:
вы также можете поместить это в функцию, если вы делаете это много:
чтобы узнать pid службы, работающей на определенном порту:
вы получите описание этого процесса. Теперь используйте kill или kill -9 pid. Его легко убить.
netstat -ap | grep :8080
не забудьте выполнить все команды как root
Источник
Как убить процесс, работающий на определенном порту в Linux?
Я попытался закрыть tomcat, используя ./shutdown.sh из каталога tomcat /bin . Но обнаружил, что сервер не был закрыт должным образом. И поэтому мне не удалось перезапустить
Мой кот запущен на порту 8080 .
Я хочу убить процесс tomcat, запущенный на 8080 . Сначала я хочу иметь список процессов, запущенных на определенном порту (8080), чтобы выбрать, какой процесс нужно убить.
30 ответов
Использовали grep java , поскольку tomcat использует java в качестве своих процессов.
Он покажет список процессов с номером порта и идентификатором процесса.
Число перед /java является идентификатором процесса. Теперь используйте команду kill , чтобы убить процесс.
-9 означает, что процесс будет принудительно завершен.
Получите PID задачи и завершите ее.
Чтобы узнать идентификатор службы, работающей на определенном порту:
Вы получите описание этого процесса. Теперь используйте kill или kill -9 pid. Легко убивается.
netstat -ap | grep :8080
Не забудьте запускать все команды как root
Это выводит на стандартный вывод идентификаторы процессов всего, что запущено на
Он также выводит некоторые данные в stderr, поэтому:
Затем мы можем передать эти идентификаторы процесса команде kill :
Вы также можете поместить это в функцию, если будете делать это часто:
Лучший способ убить все процессы на определенном порту;
Если вы хотите убить процесс, запущенный на порту с номером 8080, сначала вам нужно найти идентификационный номер процесса порта 8080 (PID), а затем убить его. Выполните следующую команду, чтобы найти PID номера порта 8080:
- sudo — команда для запроса прав администратора (идентификатор пользователя и пароль).
- lsof — список файлов (также используется для вывода списка связанных процессов)
- -t — показывать только идентификатор процесса
- -i — отображать только процесс, связанный с подключением к Интернету.
- : 8080 — показывать только процессы с этим номером порта
Итак, теперь вы можете легко убить свой PID, используя следующую команду:
- kill — команда убить процесс
- -9 — насильно
Вы можете использовать одну команду, чтобы убить процесс на определенном порту, используя следующую команду:
Для получения дополнительной информации вы можете увидеть следующую ссылку Как убить процесс на конкретный порт в Linux
Объяснение здесь: используйте комбинацию lsof и kill
Выберите pid и используйте kill
Вы можете использовать команду lsof. Пусть номер порта, как здесь, 8090
Эта команда возвращает список открытых процессов на этом порту.
Чтобы освободить порт, завершите использующий его процесс (идентификатор процесса — 75782)…
Этот сработал для меня. вот ссылка из исходного сообщения: ссылка
Однострочный, чтобы убить только LISTEN на определенном порту:
kill -9 $(lsof -t -i:3000 -sTCP:LISTEN)
Чтобы вывести список всех процессов, прослушивающих порт 8080:
Чтобы убить любой процесс, прослушивающий порт 8080:
Или более жестоко:
( -9 соответствует сигналу SIGKILL — terminate immediately/hard kill : см. Список сигналов отключения и Для чего нужен параметр -9 в команде kill?. Если для kill не указан сигнал, Передается сигнал TERM, также известный как -15 или soft kill , что иногда недостаточно, чтобы убить процесс.).
Этот fuser 8080/tcp напечатает вам PID процесса, привязанного к этому порту.
И этот fuser -k 8080/tcp убьет этот процесс.
Работает только на Linux. Более универсальным является использование lsof -i4 (или 6 для IPv6).
Это убьет программы, работающие на порту 80.
Источник
Как убить процесс, работающий на определенном порту в Linux?
Я пытался закрыть Tomcat, используя ./shutdown.sh из /bin каталога Tomcat . Но обнаружил, что сервер не был закрыт должным образом. И, таким образом, я не смог перезапустить
Мой кот работает по порту 8080 .
Я хочу убить запущенный процесс Tomcat 8080 . Сначала я хочу получить список процессов, запущенных на определенном порту (8080), чтобы выбрать, какой процесс нужно убить.
Это fuser 8080/tcp напечатает вам PID процесса, связанного с этим портом.
И это fuser -k 8080/tcp убьет этот процесс.
Работает только на Linux. Более универсальным является использование lsof -i4 (или 6 для IPv6).
Чтобы перечислить любой процесс, прослушивающий порт 8080:
Чтобы убить любой процесс, прослушивающий порт 8080:
или более насильственно:
( -9 соответствует SIGKILL — terminate immediately/hard kill сигналу: см. « Список сигналов убийства» и « Какова цель опции -9 в команде kill?» . Если сигнал не указан kill , сигнал TERM aka -15 or soft kill отправляется, чего иногда недостаточно для уничтожения). процесс.).
используется grep java как tomcat использует в java качестве своих процессов.
Он покажет список процессов с номером порта и идентификатором процесса
число перед /java является идентификатором процесса. Теперь используйте kill команду, чтобы убить процесс
-9 подразумевает, что процесс будет убит принудительно.
Я бы добавил эту однострочную строку, чтобы убить только LISTEN на конкретном порту:
kill -9 $(lsof -t -i:3000 -sTCP:LISTEN)
Вы можете использовать команду lsof. Пусть номер порта как здесь 8090
Эта команда возвращает список открытых процессов на этом порту.
Чтобы освободить порт, убейте процесс, используя его (идентификатор процесса — 75782)…
Этот работал для меня. вот ссылка из оригинального поста: ссылка
Если вы хотите уничтожить процесс, запущенный на порту 8080, то сначала вам нужно найти идентификационный номер процесса порта (PID) 8080, а затем уничтожить его. Выполните следующую команду, чтобы найти 8080 номер порта PID:
- sudo — команда для запроса прав администратора (идентификатор пользователя и пароль).
- lsof — список файлов (также используется для отображения связанных процессов)
- -t — показать только идентификатор процесса
- -i — показывать только процесс подключения к интернету
- : 8080 — показывать только процессы с этим номером порта
Теперь вы можете легко убить свой PID с помощью следующей команды:
- kill — команда, чтобы убить процесс
- -9 — насильно
Вы можете использовать одну команду, чтобы убить процесс на определенном порту, используя следующую команду:
Для получения дополнительной информации вы можете увидеть следующую ссылку Как убить процесс на конкретном порту в Linux
Источник