GNU/Linux >> Belajar Linux >  >> Linux

Dasar-dasar Perintah Linux:7 perintah untuk manajemen proses

Misalkan Anda menemukan diri Anda menjelajahi baris perintah Linux untuk pertama kalinya atau memasuki administrasi Linux. Dalam hal ini, pemahaman tingkat rendah tentang cara berkeliling terminal dan menyelesaikan tugas-tugas dasar sangat penting. Untuk membantu Anda memahami konsep tersebut, lihat dua artikel saya sebelumnya:

  • 10 perintah untuk membantu Anda memulai di terminal
  • 10 perintah lagi untuk memanipulasi file

Namun, jika Anda merasa nyaman dengan konsep tersebut, kami akan memajukan pengetahuan Linux Anda sedikit lebih jauh di artikel ini. Kami akan melihat proses dan cara mengelolanya.

Jadi, apa sebenarnya proses ?

Di Linux, sebuah proses adalah setiap instance program yang aktif (berjalan). Tapi apa itu program ? Nah, secara teknis, sebuah program adalah file yang dapat dieksekusi yang disimpan di penyimpanan di mesin Anda. Setiap kali Anda menjalankan sebuah program, Anda telah membuat sebuah proses. Pada tingkat dasar, ini cukup mudah untuk dikelola, dan itulah yang akan kita lihat hari ini.

Yang Anda butuhkan untuk memulai

Saya sarankan Anda mengikuti mesin virtual favorit Anda. Dengan begitu, Anda dapat mencoba dan gagal tanpa konsekuensi (yang jelas merupakan cara terbaik untuk merasa nyaman di terminal).

Untuk demo ini, saya akan memulai proses sleep selama 500 detik. Pendekatan ini memungkinkan Anda untuk melihat prosesnya tanpa saya membuat perubahan berarti pada sistem saya.

[tcarrigan@client ~]$ sleep 500
^Z
[1]+  Stopped                 sleep 500

Saya kemudian menghentikan proses dengan Ctrl+Z sehingga kita dapat menggunakan terminal kita.

1. Daftar proses

Untuk menampilkan proses yang sedang aktif, gunakan ps perintah:

[tcarrigan@client ~]$ ps
    PID TTY          TIME CMD
   2648 pts/0    00:00:00 bash
   3293 pts/0    00:00:00 sleep
   3300 pts/0    00:00:00 ps

Di sini Anda mendapatkan sedikit informasi tentang proses aktif di sistem Anda. Anda perlu memperhatikan PID (ID proses unik), TIME (jumlah waktu proses telah berjalan), dan CMD (perintah yang dijalankan untuk meluncurkan proses).

2. Daftar verbose (proses)

Untuk melihat daftar proses yang sangat detail, Anda dapat menggunakan ps aux perintah.

  • a - semua pengguna
  • u - menunjukkan pengguna/pemilik
  • x - menampilkan proses yang tidak dijalankan di terminal (membuat output agak panjang)

Anda dapat melihat perintah di sini (output diedit untuk panjang):

[tcarrigan@client ~]$ ps aux
USER         PID %CPU %MEM   VSZ    RSS   TTY  STAT  START    TIME   COMMAND
tcarrig+    3293  0.0  0.0 215292   520 pts/0    T    13:41   0:00 sleep 500
root        3380  0.0  0.0      0     0 ?        I    13:45   0:00 [kworker/1:1-mm_percpu_wq]
root        3381  0.0  0.0      0     0 ?        I    13:45   0:00 [kworker/1:3]
root        3398  0.0  0.0      0     0 ?        I    13:46   0:00 [kworker/3:2-ata_sff]
root        3481  0.0  0.0      0     0 ?        I    13:50   0:00 [kworker/u8:2-flush-253:0]
root        3482  0.0  0.0      0     0 ?        I    13:50   0:00 [kworker/0:1-events]
root        3483  0.0  0.0      0     0 ?        I    13:50   0:00 [kworker/0:2]
root        3508  0.0  0.0      0     0 ?        I    13:51   0:00 [kworker/3:0-ata_sff]
root        3511  0.0  0.0  18892  7732 ?        S    13:52   0:00 systemd-userwork
root        3512  0.0  0.0  18892  7656 ?        S    13:52   0:00 systemd-userwork
root        3513  0.0  0.0  18892  7656 ?        S    13:52   0:00 systemd-userwork
root        3566  0.4  0.0 432792  8024 ?        Ssl  13:54   0:00 /usr/libexec/fprintd
tcarrig+    3598  0.0  0.0 228208  3948 pts/0    R+   13:54   0:00 ps aux

3. Bunuh dengan PID

Tak pelak lagi, sebuah proses akan macet, dan Anda harus kill dia. Semakin banyak waktu yang Anda habiskan di CLI, semakin besar kemungkinan Anda akan membutuhkan kill memerintah. Cara paling akurat untuk mengidentifikasi suatu proses adalah dengan ID proses (PID).

Gunakan sintaks berikut:

[tcarrigan@client ~]$ kill PID

Perintah ini mengirimkan SIGTERM sinyal. Namun, jika Anda menghadapi proses yang macet, tambahkan -9 pilihan.

[tcarrigan@client ~]$ ps
    PID TTY          TIME CMD
   2648 pts/0    00:00:00 bash
   3293 pts/0    00:00:00 sleep
   4684 pts/0    00:00:00 sleep
  40527 pts/0    00:00:00 sleep
  40540 pts/0    00:00:00 ps
[tcarrigan@client ~]$ sudo kill -9 3293
[sudo] password for tcarrigan: 
[1]   Killed                  sleep 500

4. Bunuh dengan nama/kata kunci

Gunakan killall perintah untuk mematikan proses dengan nama. Perintah ini akan mematikan semua proses dengan kata kunci/nama yang Anda tentukan.

Sintaksnya adalah:

[tcarrigan@client ~]$ killall sleep

Ini akan membunuh semua sleep proses aktif pada sistem (-9 opsi juga berfungsi di sini). Ini contohnya:

[tcarrigan@client ~]$ ps
    PID TTY          TIME CMD
   2648 pts/0    00:00:00 bash
   4684 pts/0    00:00:00 sleep
  40527 pts/0    00:00:00 sleep
  40540 pts/0    00:00:00 ps
[tcarrigan@client ~]$ killall -9 sleep 
[2]-   Killed                  sleep 500
[3]+   Killed                  sleep 500

Dua perintah berikut ini berjalan beriringan. Mereka memungkinkan Anda untuk memindahkan/mengelola perintah latar belakang. Saya akan memberikan tampilan dasar pada sintaks di bawah ini; namun, untuk melihat perintah ini secara mendalam, lihat artikel saya sebelumnya tentang subjek ini.

5. Buat daftar pekerjaan latar belakang dan lanjutkan pekerjaan latar belakang

Untuk membuat daftar dan mengelola pekerjaan latar belakang, kami akan menggunakan bg memerintah. Saya memulai sleep 500 baru proses dan kemudian menghentikannya, mengirimkannya ke latar belakang. Jadi kami melihatnya terdaftar saat menjalankan bg di bawah ini:

[tcarrigan@client ~]$ bg
[1]+ sleep 500 &

6. Bawa pekerjaan terbaru ke latar depan

Untuk melakukan ini, kita akan menggunakan fg memerintah. Ini membawa pekerjaan/proses yang paling baru dijalankan ke latar depan. Contoh berikut adalah lanjutan dari perintah di atas. sleep 500 proses yang ada di latar belakang sekarang aktif di latar belakang. Ayo terangkan...

[tcarrigan@client ~]$ fg
sleep 500

Perintah ini membawa kita ke perintah terakhir kita dalam daftar ini.

7. Bawa pekerjaan tertentu ke latar depan

Gunakan fg perintah lagi, tetapi pilih pekerjaan tertentu untuk dibawa ke latar depan (bukan yang terbaru). Untuk melakukan ini, kita hanya akan menambahkan nama pekerjaan/proses ke perintah.

[tcarrigan@client ~]$ fg XXXample

Ini membawa pekerjaan XXXample ke latar depan.

[ Ingin menguji kemampuan sysadmin Anda? Ikuti penilaian keterampilan hari ini. ] 

Menutup

Di Dasar-dasar Perintah Linux hari ini, kita melihat proses dan cara mengelolanya. Anda sekarang dapat menyelesaikan tugas manajemen proses umum—mulai dari membuat daftar dan mematikan hingga berpindah antara latar belakang dan latar depan. Jika ada area administrasi Linux umum lainnya yang ingin Anda lihat daftar perintahnya, kirimkan email ke tim di [email protected], dan saya akan melakukan yang terbaik untuk menyempurnakannya untuk Anda.


Linux
  1. A sampai Z Perintah Linux

  2. Kiat Baris Perintah Linux untuk Meningkatkan Produktivitas

  3. Perintah gema Linux

  1. 20 perintah Linux penting untuk setiap pengguna

  2. 8 perintah Linux untuk manajemen proses yang efektif

  3. Dasar-dasar baris Perintah Linux – Menjalankan perintah dari baris perintah

  1. 3 Perintah Linux yang Berguna untuk Administrator Sistem

  2. 30 Latihan Proses Linux Untuk Sysadmin

  3. Perintah Dasar Linux Teratas untuk Pemula