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))