Android

Bagaimana membunuh proses di linux

How to kill Process in Linux

How to kill Process in Linux

Isi kandungan:

Anonim

Pernahkah anda menghadapi situasi di mana anda melancarkan aplikasi, dan tiba-tiba semasa anda menggunakan aplikasi, ia menjadi tidak responsif dan kemalangan tiba-tiba? Anda cuba untuk memulakan aplikasi sekali lagi, tetapi tiada apa yang berlaku kerana proses permohonan asal tidak pernah benar-benar dimatikan sepenuhnya.

Nah, ia telah berlaku kepada kita semua pada satu ketika, bukan? Penyelesaiannya adalah untuk menamatkan atau membunuh proses permohonan. Tetapi bagaimana?

Nasib baik, terdapat beberapa utiliti di Linux yang membolehkan anda membunuh proses yang salah., kami akan menunjukkan kepada anda cara menggunakan arahan kill , kill , dan pkill untuk menamatkan proses di Linux.

Perbezaan utama antara alat ini adalah kill menamatkan proses berdasarkan Nombor Proses ID (PID), manakala arahan pkill dan pkill menamatkan proses yang dijalankan berdasarkan nama dan atribut lain.

Pengguna tetap boleh membunuh proses mereka sendiri, tetapi bukan pengguna milik pengguna lain, sedangkan pengguna root dapat membunuh semua proses.

Isyarat Sistem Bunuh

kill , kill , dan menghantar menghantar isyarat kepada proses tertentu atau kumpulan proses. Apabila tiada isyarat dinyatakan, setiap alat menghantar 15 ( TERM ).

Isyarat yang paling biasa digunakan ialah:

  • 1 (-HUP): untuk memuat semula proses. 9 (-KILL): untuk membunuh proses. 15 (-TERM): untuk menghilangkan proses dengan anggun.

Isyarat boleh dinyatakan dalam tiga cara berbeza:

  • menggunakan nombor (misalnya, -1) dengan awalan "SIG" (mis., -SIGHUP) tanpa awalan "SIG" (misalnya, -HUP).

Gunakan pilihan -l untuk menyenaraikan semua isyarat yang ada:

kill -l # or killall -l

Langkah-langkah yang digariskan di bawah akan berfungsi pada semua pengagihan Linux.

Proses Pengakhiran Menggunakan Perintah kill

Untuk menamatkan proses dengan perintah kill , pertama anda perlu mencari PID proses. Anda boleh melakukan ini menggunakan perintah yang berbeza seperti top , ps , pidof dan pgrep .

Katakan pelayar Firefox telah menjadi tidak responsif, dan anda perlu membunuh proses Firefox. Untuk mencari ID proses, gunakan arahan pidof :

pidof firefox

Perintah ini akan mencetak semua proses Firefox:

2551 2514 1963 1856 1771

Sebaik sahaja anda tahu Firefox memproses PID untuk menamatkan semua mereka menghantar isyarat TERM :

kill -9 2551 2514 1963 1856 1771

Proses killall Menggunakan Perintah killall

Perintah killall menamatkan semua program yang sepadan dengan nama tertentu.

Menggunakan senario yang sama seperti dahulu, anda boleh membunuh proses Firefox dengan menaip:

killall -9 firefox

killall menerima beberapa pilihan seperti menghantar isyarat kepada proses yang dimiliki oleh pengguna tertentu, nama proses yang hampir sama dengan ekspresi biasa, dan masa penciptaan. Anda boleh mendapatkan senarai semua pilihan dengan menaip killall (tanpa sebarang argumen) di terminal anda.

Contohnya, untuk menamatkan semua proses yang berjalan sebagai pengguna "sara", anda akan menjalankan arahan berikut:

sudo killall -u sara

Proses pkill Menggunakan Perintah pkill

pkill menamatkan proses yang sepadan dengan corak yang diberikan pada baris arahan:

pkill -9 firefox

Nama proses tidak perlu menjadi padanan tepat.

Dengan pkill anda juga boleh menghantar isyarat kepada proses yang dimiliki oleh pengguna tertentu. Untuk membunuh hanya proses firefox yang dimiliki pengguna "sara", anda akan menaip:

pkill -9 -u sara firefox

Kesimpulannya

Menamatkan program yang tidak bertindak balas dengan menggunakan arahan kill , kill dan pkill adalah tugas yang mudah. Anda hanya perlu mengetahui nama proses atau PID.

membunuh terminal