Cara Menghentikan Proses Linux Menggunakan Nomor Port


Pernahkah Anda menghadapi situasi di mana Anda harus menghentikan proses yang berjalan pada port tertentu di mesin Linux Anda?

Anda mungkin khawatir aplikasi yang Anda jalankan mengalami gangguan atau menghabiskan sumber daya jaringan atau daya CPU lokal. Aplikasi semacam itu bahkan bisa menjadi ancaman keamanan yang ingin Anda hilangkan.

Apa pun alasannya, Anda dapat menggunakan perintah fuser,lsof, dannetstatdari terminal (bersama dengan kill) untuk membantu Anda menemukan dan menghentikan proses Linux apa pun menggunakan nomor port. Perintah ini dapat digunakan pada sebagian besar sistem operasi Linux, termasuk Ubuntu.

Cara Menghentikan Proses Linux Menggunakan Perintah Fuser

Salah satu cara termudah untuk menghentikan proses menggunakan nomor port adalah dengan menggunakan perintah fuser. Perintah terminal Linux ini dapat mencantumkan atau mematikan proses yang mengakses file atau soket. Jika aplikasi berjalan dengan aktivitas jaringan (sehingga menggunakan port terbuka), aplikasi mungkin melakukan salah satu dari dua hal berikut.

Sebelum melanjutkan, Anda harus memastikan bahwa Anda merasa nyaman menggunakan terminal baris perintah di PC Linux Anda.

Untuk membuat daftar proses yang menggunakan nomor port menggunakan fuser, Anda dapat menggunakan sintaks berikut:

fuser -n port protokol

Dalam contoh ini, protocolbisa berupa tcpatau udp, sedangkan portadalah nomor port yang Anda inginkan untuk memeriksa. Misalnya, untuk melihat proses mana yang menggunakan TCP port 80, Anda dapat menjalankan:

fuser -n tcp 80

Ini akan mencetak ID proses (PID) dari proses yang menggunakan port tersebut.

Untuk menghentikan proses tersebut, Anda dapat menambahkan opsi -kke fuser. Ini akan mengirimkan sinyal SIGTERM ke setiap proses, meminta mereka untuk mengakhiri dengan baik. Misalnya:

fuser -k -n tcp 80

Ini akan mematikan semua proses yang menggunakan port TCP 80.

Jika beberapa proses tidak merespons SIGTERM, Anda dapat menggunakan -KILLdaripada -k. Ini akan mengirimkan sinyal mematikan (SIGKILL), yang dapat membantu memaksa proses yang sedang berjalan yang Anda identifikasi untuk segera dihentikan. Namun, hal ini dapat menyebabkan kehilangan atau kerusakan data, jadi gunakanlah dengan hati-hati. Misalnya:.

pelebur -KILL -n tcp 80

Ini akan menghentikan semua proses yang menggunakan TCP port 80 secara paksa. Jika Anda mengalami masalah apa pun, jalankan perintah ini sebagai pengguna super (menggunakan perintah sudo) atau dengan menggunakan pengguna root.

Cara Menghentikan Proses Linux Menggunakan Perintah lsof

Cara lain untuk menghentikan proses menggunakan nomor port pada PC Linux adalah dengan menggunakan perintahlsof. Perintah ini dapat mencantumkan file dan soket yang terbuka di sistem Anda.

Untuk membuat daftar proses yang menggunakan nomor port tertentu, Anda dapat menggunakan sintaks berikut:

lsof -i protokol:pelabuhan

Seperti sebelumnya, protocoldapat berupa tcpatau udp, sedangkan portadalah nomor port yang Anda inginkan memeriksa. Misalnya, untuk melihat proses mana yang menggunakan port TCP 53 (biasanya digunakan untuk permintaan DNS), Anda dapat menjalankan perintah ini:

lsof -i tcp:53

Ini akan mencetak beberapa informasi tentang setiap proses yang menggunakan port tersebut, termasuk PID-nya.

Untuk menghentikan proses tersebut, Anda dapat menggunakan opsi-tdenganlsof. Ini hanya akan mencetak PID dari proses tanpa informasi lainnya. Anda kemudian dapat menyalurkan keluaran ini ke perintah killdengan opsi sinyal apa pun. Misalnya:

bunuh $(lsof -t -i tcp:53)

Ini akan mengirimkan sinyal SIGTERM (default) ke semua proses yang menggunakan port TCP 53.

Jika beberapa proses tidak merespons sinyal SIGTERM seperti sebelumnya, Anda dapat menggunakan -9daripada tidak menggunakan apa pun setelah kill. Ini akan mengirimkan sinyal SIGKILL seperti sebelumnya, memaksanya untuk segera dihentikan namun juga dapat menyebabkan kehilangan data atau kerusakan. Misalnya:

bunuh -9 $(lsof -t -i tcp:53)

Ini akan secara paksa mengirimkan sinyal SIGKILL (default) ke semua proses yang menggunakan TCP port 53.

Cara Menghentikan Proses Linux Menggunakan Perintah netstat

Anda juga dapat menggunakan perintah netstatuntuk melacak proses yang berjalan di PC Linux Anda menggunakan port jaringan yang aktif dan terbuka. netstat memungkinkan Anda melihat koneksi jaringan dan statistik di sistem Anda, memungkinkan Anda menentukan proses yang bermasalah.

Untuk membuat daftar proses menggunakan nomor port beserta PID-nya, Anda perlu menambahkan dua opsi: -p, yang menampilkan PID, dan -l, yang menampilkan soket pendengaran saja..

Anda juga perlu menentukan protokol (tcp, udp, dll.) dan secara opsional memfilter berdasarkan status (LISTEN, dll.). Misalnya, untuk melihat proses TCP mana yang mendengarkan pada port mana pun, Anda dapat menjalankan:

netstat -p tcp -l

Ini akan mencetak informasi tentang setiap soket TCP yang mendengarkan pada port mana pun, termasuk PID-nya.

Untuk memfilter berdasarkan port tertentu, Anda harus menambahkan opsi lain: -n, yang menampilkan alamat numerik, bukan nama. Anda juga perlu menentukan format alamat yang tepat: [protocol][@hostname|hostaddr][:service|port].

Misalnya, untuk melihat proses TCP mana yang mendengarkan pada port 80, Anda dapat menjalankan:

netstat -p tcp -l -n 80

Ini akan mencetak informasi tentang setiap soket TCP yang mendengarkan pada port 8080, termasuk PID-nya.

Untuk menghentikan proses tersebut, Anda dapat menggunakan perintah killdengan opsi sinyal apa pun yang Anda inginkan dan PID yang Anda peroleh dari netstat. Misalnya:

bunuh 1234 5678

Ini akan mengirimkan sinyal SIGTERM (default) ke proses dengan PID 1234dan 5678.

Jika beberapa proses tidak merespons sinyal SIGTERM seperti sebelumnya, Anda dapat menggunakan -9daripada tidak menggunakan apa pun setelah kill. Ini akan mengirimkan sinyal SIGKILL seperti sebelumnya, memaksanya untuk segera dihentikan namun dapat menyebabkan kehilangan data atau kerusakan seperti sebelumnya. Misalnya:

bunuh -9 1234 5678

Ini akan mengirimkan sinyal SIGKILL ke proses dengan PID 1234dan 5678secara paksa, misalnya. Ganti 1234dengan PID yang benar untuk proses yang Anda jalankan.

Kontrol Aplikasi Linux Anda

Berkat langkah-langkah yang diuraikan di atas, Anda dapat dengan cepat menghentikan proses Linux yang sedang berjalan menggunakan nomor port menggunakan baris perintah Linux. Ingatlah untuk berhati-hati saat menghentikan proses, terutama dengan sinyal SIGKILL, karena dapat menyebabkan efek samping yang tidak diinginkan—Anda tentunya tidak ingin menyebabkan ketidakstabilan sistem.

Ingin melihat lebih dekat kinerja sistem Anda di Linux? Anda mungkin ingin periksa penggunaan memori Anda di Linux berikutnya. Jika Anda khawatir tentang potensi risiko keamanan, Anda mungkin perlu ubah kata sandi Anda di Linux juga.

Perlu beralih ke distribusi Linux baru? Jika Anda seorang pemula, pertimbangkan Linux Mint adalah alternatif yang aman dan stabil..

.

Pos terkait:


2.04.2023