Как узнать, какая программа прослушивает данный порт?

UPDATE 2

По состоянию на 25 июля 2013 года следующий PPA предлагает версию Release LibreOffice:

sudo add-apt-repository ppa:libreoffice/ppa
sudo apt-get update  
sudo apt-get upgrade  

Это оставит вас с LibreOffice 4.1.

UPDATE 2

Теперь доступен PPA для 4.1.0. Чтобы добавить его, просто нажмите Ctrl + Alt + T на клавиатуре, чтобы открыть терминал. Когда он откроется, запустите следующие команды:

sudo add-apt-repository ppa:libreoffice/libreoffice-prereleases

. Для получения полных инструкций о том, как установить бета2 Libreoffice 4.1.0, ознакомьтесь с LibreOffice Pre-Releases

ORIGINAL ANSWER

Я искал высокий и низкий, и я не могу найти PPA для 4.1.x. Теперь, если вы хотите установить его (в документации не упоминается удаление предыдущей установки), я бы рекомендовал удалить предыдущие версии перед установкой этого.

Чтобы установить LibreOffice 4.1.0 Beta 1 на Ubuntu 13.04, 12.10 и 12.04, сделайте это. Просто нажмите Ctrl + Alt + Alt на клавиатуре, чтобы открыть терминал. Когда он открывается, запустите следующие команды:

Для 32-битных систем:

wget -c dev-builds.libreoffice.org/pre-releases/deb/x86/LibreOfficeDev_4.1.0.0.beta1_Linux_x86_deb.tar.gz

Для 64-битных систем:

wget -c dev-builds.libreoffice.org/pre-releases/deb/x86_64/LibreOfficeDev_4.1.0.0.beta1_Linux_x86-64_deb.tar.gz

Извлечь архив:

eDev_4.1.0.tar -zxvf LibreOffic0.beta1_Linux_x86*_deb.tar.gz

Установить LibreOffice 4.1.0:

cd LibreOfficeDev*/DEBS
sudo dpkg -i *

По состоянию на 13 июня 2013 года он все еще недоступен в LibreOffice Pre-Releases . После этого будет обновлен ответ.

Источник: LinuxG

1
задан 10 August 2017 в 01:56

5 ответов

Вы можете использовать netstat, чтобы узнать, какой процесс прослушивается на каком порту.

Вы можете использовать эту команду для получения полной информации:

sudo netstat -peanut

, если вам нужно знать точно, какой из них прослушивает порт 8000, вы можете использовать это:

sudo netstat -peanut | grep ":8000 "

Нет процесса, который может скрываться от netstat.

311
ответ дан 24 May 2018 в 23:50
  • 1
    netstat -peanut легче запомнить, чем netstat -taupen! – Douglas B. Staple 31 August 2015 в 15:34
  • 2
    Неплохо ! - Просто отредактировал ответ, чтобы отразить ваш комментарий. Спасибо. – Antoine Rodriguez 1 September 2015 в 19:48
  • 3
    'fuser -k 8000 / tcp', чтобы освободить этот порт – Jay 19 February 2016 в 17:00
  • 4
    если в столбце "PID / Название программы" вы видите тире вместо имени процесса, вы забыли добавить & sudo " – v.shashenko 9 February 2017 в 15:29
  • 5
    так что это арахис eh – prusswan 22 February 2017 в 07:16

Чтобы изложить ответ на @ 33833, вы можете получить очень подробную информацию, например:

$ lsof -i :8000
COMMAND  PID  USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
squid3  1289 proxy   15u  IPv6 14810490      0t0  TCP *:8000 (LISTEN)

$ ps -fp 1289
UID        PID  PPID  C STIME TTY          TIME CMD
proxy     1289     1  0 09:48 ?        00:00:00 /usr/sbin/squid3 -N -f /etc/squid-deb-proxy/squid-deb-proxy.conf

Я вижу прямо там, что кальмар - это процесс, но он действительно мой , который занимает порт.

Еще один хороший пример приложения java:

$ lsof -i :4242
COMMAND  PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    3075 root   86u  IPv4    12019      0t0  TCP *:4242 (LISTEN)

$ ps -fp 3075
UID        PID  PPID  C STIME TTY          TIME CMD
root      3075     1 15 May24 ?        3-16:07:25 /usr/local/crashplan/jre/bin/java -Dfile.encoding=UTF-8 -Dapp=CrashPlanService -DappBaseName=CrashPl

Вы можете видеть в lsof (LiSt Open Files), что это java, что менее полезно. Запустив команду ps с помощью PID, мы сразу увидим, что это CrashPlan.

163
ответ дан 24 May 2018 в 23:50
  • 1
    В одной команде: lsof -t -i :8000 | xargs ps -fp – Brett Y 14 August 2014 в 04:41
  • 2
    Мне пришлось префикс sudo, но после этого он работал для меня. Благодарю. – Dwayne Crooks 11 September 2016 в 00:25
  • 3
    note: без sudo вы не получите ошибку, вы просто не получите ничего в качестве ответа. – Frank Nocke 6 January 2017 в 14:52

Попробуйте ss из пакета iproute2:

ss -nlp | grep 8000
10
ответ дан 24 May 2018 в 23:50
  • 1
    ss также имеет свои собственные возможности фильтрации: ss -nlp '( sport = :8000 )'. – GnP 10 December 2014 в 01:21

Другой способ использования socklist из пакета procinfo:

man socklist

ОПИСАНИЕ socklist - это Perl-скрипт, который дает вам список всех открытых сокетов, перечисляющие типы, порт, inode, uid, pid, fd и программу, к которой он принадлежит.

sudo socklist

type  port      inode     uid    pid   fd  name
tcp     53      28749       0   1721    5  dnsmasq
tcp    631      29190       0   2433   11  cupsd
tcp  42376      82230    1000   1345   84  firefox
tcp  49048      71686    1000   1345   67  firefox
tcp  41248      81672    1000   1345  119  firefox
tcp  54676      84558    1000   1345   73  firefox
udp  56107      66258       0   3268   20  dhclient
udp  40804      17857     107    679   14  avahi-daemon
udp     53      28748       0   1721    4  dnsmasq
udp     68      67427       0   3268    6  dhclient
udp    631      19692       0    765    8  cups-browsed
udp   5353      17855     107    679   12  avahi-daemon
4
ответ дан 24 May 2018 в 23:50

Вы можете использовать nmap.

Очень важно знать, какие порты открыты на вашем ПК, это не только полезно для Linux, но и для других операционных систем, у Linux есть много инструментов для проверки того, какие порты открыты, наиболее распространенным является nmap, который является инструментом командной строки, но также существует графический frontEnd для него, если вы предпочитаете этот способ.1

, чтобы установить его, просто нажмите Ctrl + Alt + T на клавиатуре, чтобы открыть терминал , Когда он откроется, запустите следующую команду:

sudo apt-get install nmap

Для получения дополнительной информации о nmap и других утилитах, перейдите сюда

1 Источник: garron.me

2
ответ дан 24 May 2018 в 23:50
  • 1
    nmap только скажет вам, что порт открыт, а не какой процесс его открыл. – Andrew Burns 17 June 2014 в 20:49
  • 2
    Я нажал на ваш источник, чтобы прочитать [nmap] tries to guess which service is listening on each port, but it can make mistakes прямо перед тем, как он предложит фактический метод, чтобы выяснить, какой процесс принадлежит сокету. – GnP 10 December 2014 в 01:24
  • 3
    @gnp Вы также можете взглянуть на Это . – Mitch♦ 10 December 2014 в 10:15
  • 4
    @ Митч я сделал. OP должен знать точный PID процесса в локальной системе. Nmap не является подходящим инструментом здесь, даже при обнаружении службы и версии. Либо он будет соответствовать элементу базы данных nmaps, который все еще позволяет OP в темноте, какой процесс убивать или перенастраивать, или он не будет, и OP будет иметь хороший отпечаток пальца и ссылку на insecure.org – GnP 10 December 2014 в 18:10

Другие вопросы по тегам:

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