GNU/Linux >> Belajar Linux >  >> Linux

Menemukan PID dari proses menggunakan port tertentu?

Di Linux, Anda harus menjadi root atau pemilik proses untuk mendapatkan informasi yang Anda inginkan. Dengan demikian, untuk proses yang berjalan sebagai pengguna lain, awali sudo adalah sebagian besar dari apa yang Anda butuhkan. Selain itu, pada sistem Linux modern, ss adalah alat yang digunakan untuk melakukan ini:

$ sudo ss -lptn 'sport = :80'
State   Local Address:Port  Peer Address:Port              
LISTEN  127.0.0.1:80        *:*                users:(("nginx",pid=125004,fd=12))
LISTEN  ::1:80              :::*               users:(("nginx",pid=125004,fd=11))

Anda juga dapat menggunakan pemanggilan yang sama dengan yang Anda gunakan saat ini, tetapi ingatlah untuk sudo :

$ sudo netstat -nlp | grep :80
tcp  0  0  0.0.0.0:80  0.0.0.0:*  LISTEN  125004/nginx

Anda juga dapat menggunakan lsof:

$ sudo lsof -n -i :80 | grep LISTEN
nginx   125004 nginx    3u  IPv4   6645      0t0  TCP 0.0.0.0:80 (LISTEN)

Anda juga dapat menggunakan lsof kegunaan. Perlu di-root.

# lsof -i :25
COMMAND  PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
exim4   2799 Debian-exim    3u  IPv4   6645      0t0  TCP localhost:smtp (LISTEN)
exim4   2799 Debian-exim    4u  IPv6   6646      0t0  TCP localhost:smtp (LISTEN)

Saya menggunakan "CentOS 7 minimal" yang tidak memiliki netstat tidak juga lsof . Tetapi banyak distribusi linux yang memiliki perintah socket stats (yaitu ss ).

Berikut adalah contoh eksekusi:

# ss -tanp | grep 6379
LISTEN   0    128  127.0.0.1:6379   *:*   users:(("redis-server",pid=2531,fd=4))

Linux
  1. Membangun wadah dengan tangan:Ruang nama PID

  2. Mengapa Proses Pgid Anak Bukan Pid Orang Tua?

  3. Bagaimana cara menemukan ID proses di Ubuntu?

  1. Bagaimana cara menghentikan proses dari Python menggunakan pid?

  2. Bagaimana agar hanya pengguna, pid dan perintah yang dijalankan untuk proses tertentu? (Ubuntu 11.10)

  3. Netcat - Bagaimana cara mendengarkan pada port TCP menggunakan alamat IPv6?

  1. Bagaimana Cara Membunuh Proses yang Berjalan pada Port Tertentu di Linux?

  2. Periksa batas FD terbuka untuk proses tertentu di Linux

  3. Cara menemukan file .pid untuk proses tertentu