Saya ingin mengetahui proses mana (khususnya, id proses) yang menggunakan port yang diberikan. Satu menangkapnya adalah, saya tidak ingin menggunakan sudo, saya juga tidak login sebagai root. Proses yang saya ingin ini berfungsi dijalankan oleh pengguna yang sama yang ingin saya temukan proses id - jadi saya akan berpikir ini sederhana.
Keduanya lsof
dan netstat
tidak akan memberi tahu saya id proses kecuali saya menjalankannya menggunakan sudo - mereka akan memberi tahu saya bahwa port sedang digunakan.
Sebagai beberapa konteks tambahan - Saya memiliki berbagai aplikasi yang semuanya terhubung melalui SSH ke server yang saya kelola, dan membuat port reverse ke depan. Setelah itu diatur, server saya melakukan beberapa pemrosesan menggunakan port yang diteruskan, dan kemudian koneksi dapat dimatikan. Jika saya dapat memetakan port tertentu (setiap aplikasi memiliki sendiri) untuk memproses, ini adalah skrip sederhana. Ada saran?
Ngomong-ngomong, ini ada di kotak Ubuntu - tapi saya kira solusi apa pun akan menjadi standar di sebagian besar distro Linux.
-an
.netstat -pant
juga berfungsi dan lebih mudah diingat.Saran Pawel tampaknya bekerja dengan baik untuk saya, tetapi sebagai alternatif, inilah saya mendengarkan dari shell1:
dan inilah saya melihatnya dengan
lsof
dari shell2:Sunting : Anda menulis di komentar itu
tetapi ini tidak demikian bagi saya. Setelah menggunakan ssh untuk meneruskan port lokal 8001, dengan
ssh vpn.example.com -L 8001:rt.int:80
, saya kemudian menemukan:Bisakah Anda menunjukkan kepada kami beberapa contoh output Anda, lebih disukai tidak terlalu banyak dihapus?
sumber
lsof
output kecuali saya menjalankannya sebagai root / sudo.