Как узнать, какая служба работает на конкретном порту в Linux?

Я пытаюсь запустить weblogic-сервер на моей машине linux, и я получаю следующую ошибку:

ERROR: transport error 202: bind failed: Address already in use ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690] FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197) 

Я думаю, что ошибка означает, что порт отладчика, который по умолчанию равен 8453, уже принадлежит некоторой другой службе. Как узнать, какая служба запущена в номере частичного порта?

  • процесс id и процесс убийства - ps commmand
  • Как я могу разрешить приложениям связываться с любым адресом в подсети, назначенной интерфейсу?
  • Почему существует так много изменений localhost по умолчанию / etc / hosts?
  • Интерфейс не работает с интерфейсом ip link set up
  • Распечатывать список файлов меньше указанного размера файла
  • Как получить потерянные псевдонимы?
  • PS: Я использовал команду netstat но это показывает все сервисы, занимающие все порты. Меня интересует только конкретный порт.

  • Есть ли команда, которая выводит ТОЛЬКО пакеты, явно установленные пользователем? (убунт / Debian)
  • Рабочие станции Linux периодически теряют интернет-соединения
  • Объединение папок с одним и тем же именем, но с другим корпусом
  • Как проверить из командной строки, что доступная сеть?
  • Как использовать awk для исправления и унификации поврежденного файла с несколькими столбцами и строками?
  • Получить общедоступные IP-адреса доступных веб-страниц?
  • 4 Solutions collect form web for “Как узнать, какая служба работает на конкретном порту в Linux?”

    Два пути:

    • lsof -i :port -S
    • netstat -a | grep port

    Вы можете сделать man lsof или man netstat для необходимой информации. Замените port на номер порта, который вы хотите найти.

    Вы можете использовать fuser или lsof то есть:

     fuser 8453/tcp lsof -i TCP:8453 

    Если вы хотите получить дополнительную информацию от fuser вы также можете использовать флаг -v , то есть: fuser -v 8453/tcp

    для чего это стоит … в зависимости от версии netstat (в частности, GNU netstat ), которую вы можете использовать, вы можете использовать

     netstat -punta | grep <port> 

    это покажет, что соединения в ESTABLISHED и LISTEN содержат UDP и TCP, и он будет игнорировать локальные сокеты UNIX. конечный результат – хороший, аккуратный, небольшой результирующий набор.

    флаг -p даст вам идентификатор процесса и имя процесса того, что использует этот порт

    флаг -u показывает udp

    флаг -n для числовых адресов

    флаг -t показывает tcp

    -a показывает прослушивающие и не прослушивающие сокеты

    На centos

     /usr/sbin/lsof -i tcp:8453 (lsof -i protocol:port) 

    На ubuntu

     /usr/bin/lsof -i tcp:8453 

    Или, узкие результаты netstat с использованием фильтров.

    Linux и Unix - лучшая ОС в мире.