GNU/Linux >> Belajar Linux >  >> Linux

Cara mematikan Proses di Linux menggunakan kill, killall, dan pkill

Apa itu proses

Proses, juga dikenal sebagai tugas, adalah bentuk program yang sedang berjalan. Program disimpan di disk dan proses berjalan di memori. Proses memiliki hubungan orang tua/anak. Suatu proses dapat menelurkan satu atau lebih anak. Beberapa proses dapat berjalan secara paralel.

Mencantumkan Proses Sistem

Perintah status proses (ps) mencantumkan proses yang terkait dengan shell Anda.

# ps [options]

Untuk setiap proses, perintah ps menampilkan PID , pengenal terminal (TTY ), waktu eksekusi kumulatif (TIME ), dan nama perintah (CMD ). Misalnya, buat daftar proses yang sedang berjalan pada sistem menggunakan perintah ps.

# ps
  PID TTY          TIME CMD
 1442 pts/1    00:00:00 sudo
 1448 pts/1    00:00:00 su
 1449 pts/1    00:00:00 bash
 1666 pts/1    00:00:00 ps

Perintah ps memiliki beberapa opsi yang dapat Anda gunakan untuk menampilkan informasi proses tambahan.

  • -a :Mencetak informasi tentang semua proses yang paling sering diminta, kecuali pemimpin grup proses dan proses yang tidak terkait dengan terminal
  • -e :Mencetak informasi tentang setiap proses yang sedang berjalan
  • -f :Menghasilkan daftar lengkap
  • -l :Menghasilkan daftar panjang
  • format-o :Menulis informasi sesuai dengan spesifikasi format yang diberikan dalam format. Beberapa opsi -o dapat ditentukan. Spesifikasi format ditafsirkan sebagai rangkaian yang dipisahkan spasi dari semua argumen opsi format.

Mencantumkan Semua Proses

Misalnya, gunakan ‘ps -ef ' perintah untuk membuat daftar semua proses yang saat ini dijadwalkan untuk dijalankan pada sistem.

# ps -ef | more

Di sini,

  • UID :Nama pengguna pemilik proses
  • PID :Nomor identifikasi proses unik dari proses
  • PPID :Nomor identifikasi proses induk dari proses
  • STIME :Waktu proses dimulai (jj:mm:dd)
  • TTY :Terminal pengontrol untuk proses. Perhatikan bahwa proses sistem (daemon) menampilkan tanda tanya (?), yang menunjukkan proses dimulai tanpa menggunakan terminal.
  • WAKTU :Waktu eksekusi kumulatif untuk proses
  • CMD :Nama perintah, opsi, dan argumen

Mengakhiri Proses

Mungkin ada saatnya Anda harus menghentikan proses yang tidak diinginkan. Suatu proses mungkin telah masuk ke dalam lingkaran tanpa akhir, atau mungkin macet. Anda dapat mematikan atau menghentikan proses apa pun yang Anda miliki. Anda dapat menggunakan dua perintah berikut untuk menghentikan satu atau lebih proses:
– kill
– pkill

Perintah kill dan pkill mengirim sinyal ke proses yang mengarahkan mereka untuk berhenti. Setiap sinyal memiliki nomor, nama, dan peristiwa terkait. Berikut adalah beberapa sinyal yang paling umum digunakan beserta fungsinya.

Angka Nama Deskripsi 1 SIGHUP Muat Ulang File Konfigurasi 2 MASUKKAN Interupsi dengan keyboard (ctrl+c) 9 SIGKILL membunuh proses 15 SIGTERM Segera akhiri proses. (Hentikan proses secara terkendali sehingga pembersihan dapat dilakukan) 18 SIGCONT Lanjutkan proses yang dihentikan dengan STOP 19 BERHENTI Hentikan proses Catatan :Namun, ada proses yang tidak boleh dihentikan, seperti init proses. Membunuh proses tersebut dapat mengakibatkan sistem crash. Pengguna super dapat mematikan proses apa pun dalam sistem.

Mengakhiri Proses menggunakan Perintah kill

Anda dapat menghentikan proses apapun dengan mengeluarkan sinyal yang sesuai untuk proses yang bersangkutan. Perintah kill mengirimkan sinyal 15, sinyal penghentian, secara default. Sinyal ini menyebabkan proses berhenti secara teratur. Perintah kill mengirimkan sinyal penghentian ke satu atau lebih proses. Sintaks untuk menggunakan perintah kill adalah sebagai berikut :

# kill [-signal] PIDs
Catatan :Perintah kill hanya menghentikan proses-proses yang Anda miliki. Pengguna root dapat menggunakan perintah kill pada proses apa pun.

Anda perlu mengetahui PID proses sebelum Anda dapat menghentikannya. Anda dapat menggunakan perintah ps atau pgrep untuk menemukan PID proses. Selain itu, Anda dapat menghentikan beberapa proses secara bersamaan dengan memasukkan beberapa PID pada satu baris perintah. Mari kita lihat contoh perintah kill. Kami akan menghentikan proses 'sleep 400' seperti yang ditunjukkan di bawah ini.

# ps -ef | grep sleep
root      1337  1218  0 07:33 pts/0    00:00:00 sleep 400
# kill -9 1337
# ps -ef | grep sleep
#

Mengakhiri Proses menggunakan Perintah pkill atau killall

Atau, Anda dapat menggunakan perintah pkill atau killall untuk mengirim sinyal penghentian ke proses.

# pkill [-options] PIDs

atau

# killall [-options] PIDs

Perintah pkill/killall mengharuskan Anda untuk menentukan nama alih-alih PID dari proses. Misalnya, gunakan perintah pkill untuk menghentikan proses dtmail.

# pkill dtmail 
# pgrep -l mail
#

Menghentikan Proses Secara Paksa:Sinyal 9

Beberapa proses mengabaikan sinyal default 15 yang dikirim oleh perintah kill. Jika suatu proses tidak merespons sinyal 15, Anda dapat memaksanya untuk mengakhiri dengan menggunakan sinyal 9 dengan perintah kill atau pkill.

# kill -9 PID

atau

# pkill -9 process_name
Catatan :Mengirim sinyal 15 tidak serta merta mematikan proses dengan anggun. Hanya jika sinyal ditangkap oleh proses, ia membersihkan dirinya sendiri secara berurutan dan mati. Jika tidak, ia akan mati.


Linux
  1. Cara Menemukan dan Membunuh Proses Zombie di Linux

  2. Apa Proses Zombie Dan Bagaimana Menemukan &Membunuh Proses Zombie?

  3. Bagaimana cara mematikan proses di Linux menggunakan perintah?

  1. Cara mematikan proses zombie di Linux

  2. Perbedaan Kill, Pkill, dan Killall?

  3. Linux:Temukan dan Bunuh Proses Zombie

  1. Mengelola proses di Linux dengan kill dan killall

  2. Cara Membunuh Proses yang Berjalan di Linux

  3. Apa perbedaan antara kill , pkill dan killall?