Menemukan proses yang menggunakan port tertentu di Linux


139

Saya ingin mengetahui proses mana yang saat ini menggunakan port tertentu di Linux. Apakah ada cara untuk melakukan ini?


3
Pada Windows, perintahnya adalah: netstat -anb
djangofan

Jawaban:


144

Anda memiliki dua pilihan:

lsof -i tcp:80

akan memberi Anda daftar proses menggunakan tcp port 80.

Kalau tidak,

sudo netstat -nlp

akan memberi Anda semua koneksi jaringan terbuka.


2
lsof -i | grep {username}juga sangat berguna, yaitulsof -i | grep apache
LawrenceC

1
Untuk siapa pun yang bertanya-tanya,: -njangan atasi nama,: -ltampilkan soket server mendengarkan,: -ptampilkan PID / Nama program untuk soket.
yellavon

Saya biasanya menambahkan -Pke lsof -i tcp:$PORTNUMBERsehingga pelabuhan akan dicetak kembali ke saya sebagai angka.
js.

9
netstat -lp

4
pada mac Anda harus menambahkan opsi protokol ke -p. jadi sesuatu seperti: netstat -lp tcp.
vrish88

8

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

Berikut ini contoh eksekusi:

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

2

Di Linux, Untuk menemukan proses yang berjalan di port, lakukan di bawah ini:

lsof -i :<port_number>

contoh:

lsof -i :8080

Terima kasih telah mencoba membantu. Perintah ini disebutkan dalam jawaban yang diterima. Jika Anda memiliki sesuatu yang baru, silakan edit posting Anda.
Ben N
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.