GNU/Linux >> Belajar Linux >  >> Ubuntu

Mengelola Proses Di Ubuntu Linux

Mengelola proses di Linux adalah topik penting untuk dipelajari dan dipahami, karena ini adalah sistem operasi multitasking dan memiliki banyak proses yang berlangsung pada saat yang bersamaan. Linux menyediakan banyak alat untuk mengelola proses, seperti mendaftar proses yang berjalan, mematikan proses, memantau penggunaan sistem, dll. Di Linux, setiap proses diwakili oleh ID Proses (PID). Ada beberapa atribut lain untuk proses seperti id pengguna dan id grup jika pengguna atau grup menjalankan proses. Terkadang Anda perlu mematikan atau berinteraksi dengan suatu proses, jadi Anda harus tahu cara mengelola proses ini agar sistem Anda berjalan dengan lancar. Di Linux, proses dapat dikelola dengan perintah seperti ps, pstree, pgrep, pkill, lsof, top, nice, renice and kill, dll.

Proses

Menjalankan sebuah instance dari sebuah program disebut proses. Di Linux, proses id (PID) digunakan untuk mewakili proses yang khas untuk setiap proses. Ada dua jenis proses,

  • Proses latar belakang
  • Proses latar depan

Proses Latar Belakang

Proses latar belakang dimulai di terminal dan dijalankan sendiri. Jika Anda menjalankan proses di terminal, outputnya akan ditampilkan di jendela terminal, dan Anda dapat berinteraksi dengannya, tetapi jika Anda tidak perlu berinteraksi dengan proses tersebut, Anda dapat menjalankannya di latar belakang. Jika Anda ingin menjalankan proses di latar belakang, cukup tambahkan tanda “&” di akhir perintah, dan proses akan mulai berjalan di latar belakang; itu akan menghemat waktu Anda, dan Anda akan dapat memulai proses lain. Untuk membuat daftar proses yang berjalan di latar belakang, gunakan perintah 'pekerjaan'. Ini akan menampilkan semua proses yang berjalan di latar belakang.

Misalnya, upgrade adalah proses yang panjang di Linux. Dibutuhkan terlalu banyak waktu, dan jika Anda ingin melakukan hal lain saat sistem sedang diupgrade, gunakan perintah latar belakang.

[dilindungi email]:~$ sudo apt-get upgrade -y &

Ini akan mulai berjalan di latar belakang. Dan Anda dapat berinteraksi dengan program lain sementara itu. Anda dapat memeriksa berapa banyak dan proses mana yang berjalan di latar belakang dengan mengetikkan perintah ini.

[email protected]:~$ jobs
[1]+ Menjalankan sudo apt-get upgrade -y &

Proses latar depan

Semua proses yang kita jalankan di terminal, secara default, dijalankan sebagai proses latar depan. Kami dapat mengelolanya dengan perintah latar depan dan latar belakang.

Anda dapat membawa proses latar belakang apa pun yang tercantum dalam pekerjaan ke latar depan dengan mengetikkan perintah 'fg' diikuti dengan nomor proses latar belakang.

[dilindungi email]:~$ fg %1
sudo apt-get upgrade -y

Dan jika Anda ingin membawa proses ini ke latar belakang ketik perintah ini.

[dilindungi email]:~$ bg %1

Mendaftar dan mengelola proses dengan perintah ps

Proses daftar dengan perintah ps adalah salah satu cara tertua untuk melihat proses terminal yang sedang berjalan. Ketik perintah ps untuk membuat daftar proses mana yang sedang berjalan dan berapa banyak sumber daya sistem yang mereka gunakan dan siapa yang menjalankannya.

[dilindungi email]:~$ ps u
USER PID %CPU %MEM VSZ RSS TTY STAT MULAI WAKTU PERINTAH
Jim 1562 0.0 0.0 164356 6476 tty2 Ssl+ 13:07 0:00 shell
Jim 1564 5.2 0.9 881840 78704 tty2 Sl+ 3:07 13:13 dauth
Jim 2919 0.0 0.0 11328 4660 pts/0 Ss 13:08 0:00 bash
Jim 15604 0.0 0.0 11836 3412 pts/0 R+ 17 :19 0:00 ps u
…snip…

Kolom pengguna menunjukkan nama pengguna pada tabel di atas, dan PID menunjukkan id proses. Anda dapat menggunakan PID untuk mematikan atau mengirim sinyal mematikan ke suatu proses. %CPU menunjukkan prosesor persentase CPU, dan %MEM menunjukkan penggunaan memori akses acak. Untuk mematikan proses, ketik.

[dilindungi email]:~$ kill [ id proses (PID) ]

atau

[dilindungi email]:~$ kill -9 [ id proses (PID) ]

Gunakan perintah ps aux untuk melihat semua proses yang berjalan dan tambahkan pipa untuk melihatnya secara berurutan.

[dilindungi email]:~$ ps aux | lebih sedikit

Jika Anda ingin mengatur ulang kolom, Anda dapat melakukannya dengan menambahkan tanda -e untuk mendaftar semua proses dan -o untuk menunjukkan kolom dengan kata kunci dalam perintah ps.

[dilindungi email]:~$ps -eo pid,user,uid,%cpu,%mem,vsz,rss,comm
PID USER UID %CPU %MEM VSZ RSS COMMAND
1 root 0 0,1 0,1 167848 11684 sistem
3032 jim 1000 16,5 4.7 21744776 386524 chrome
…snip…

Opsi untuk perintah ps.

opsi u digunakan untuk membuat daftar proses oleh pengguna.

[dilindungi email]:~$ ps u

opsi f digunakan untuk menampilkan daftar lengkap.

[dilindungi email]:~$ ps f

x opsi digunakan untuk menampilkan informasi tentang proses tanpa terminal.

[dilindungi email]:~$ ps x

Opsi e digunakan untuk menampilkan informasi tambahan.

[dilindungi email]:~$ ps e

sebuah opsi digunakan untuk mendaftar semua proses dengan terminal.

[dilindungi email]:~$ ps a

Opsi v digunakan untuk menampilkan format memori virtual.

[dilindungi email]:~$ ps v

Tandai untuk perintah ps.

-e flag digunakan untuk melihat setiap proses pada sistem.

[dilindungi email]:~$ ps -e

-u flag digunakan untuk melihat proses yang berjalan sebagai root.

[dilindungi email]:~$ ps -u

-f flag digunakan untuk daftar lengkap proses.

[dilindungi email]:~$ ps -f

-o flag digunakan untuk mendaftar proses di kolom yang diinginkan.

[dilindungi email]:~$ ps -o
pstree

pstree adalah perintah lain untuk membuat daftar proses; itu menunjukkan output dalam format pohon.

[dilindungi email]:~$ pstree

Opsi untuk perintah pstree

-n digunakan untuk menyortir proses berdasarkan PID.

[dilindungi email]:~$ pstree -n

-H digunakan untuk menyoroti proses.

[dilindungi email]:~$ pstree -H [PID]
[dilindungi email]:~$ pstree -H 6457

-a digunakan untuk menampilkan keluaran, termasuk argumen baris perintah.

[dilindungi email]:~$ pstree -a

-g digunakan untuk menampilkan proses berdasarkan id grup.

[dilindungi email]:~$ pstree -g

-s digunakan untuk menabur pohon atau proses tertentu.

[dilindungi email]:~$ pstree -s [PID]
[dilindungi email]:~$ pstree -s 6457

[namapengguna] digunakan untuk menampilkan proses yang dimiliki oleh pengguna.

[dilindungi email]:~$ pstree [namapengguna]
[dilindungi email]:~$ pstree jim
pgrep

Dengan perintah pgrep, Anda dapat menemukan proses yang sedang berjalan berdasarkan kriteria tertentu. Anda dapat menggunakan nama lengkap atau singkatan dari proses untuk menemukan atau dengan nama pengguna atau atribut lainnya. perintah pgrep mengikuti pola berikut.

[dilindungi email]:~$ Pgrep [opsi] [pola]
[dilindungi email]:~$ pgrep -u jim chrome
Opsi untuk perintah pgrep

-i digunakan untuk mencari case-sensitive

[dilindungi email]:~$ Pgrep -i firefox

-d digunakan untuk membatasi output

[dilindungi email]:~$ Pgrep -u jim -d:

-u digunakan untuk menemukan proses yang dimiliki oleh pengguna

[dilindungi email]:~$ Pgrep -u jim

-a digunakan untuk membuat daftar proses di samping perintahnya

[dilindungi email]:~$ Pgrep -u jim -a

-c digunakan untuk menunjukkan jumlah proses pencocokan

[dilindungi email]:~$ Pgrep -c -u jim

-l digunakan untuk mendaftar proses dan namanya

[dilindungi email]:~$ Pgrep -u jim -l
pkill

Dengan perintah pkill, Anda dapat mengirim sinyal ke proses yang sedang berjalan berdasarkan kriteria tertentu. Anda dapat menggunakan nama lengkap atau singkatan dari proses untuk menemukan atau dengan nama pengguna atau atribut lainnya. perintah pgrep mengikuti pola berikut.

[dilindungi email]:~$ Pkill [Opsi] [Pola]
[dilindungi email]:~$ Pkill -9 chrome
Opsi untuk perintah pkill

–sinyal digunakan untuk mengirim sinyal mis. SIGKILL, SIGTERM, dll.

[dilindungi email]:~$ Pkill –sinyal SIGTERM vscode

-HUP digunakan untuk memuat ulang proses

[dilindungi email]:~$ Pkill -HUP syslogd

-f digunakan untuk mematikan proses berdasarkan baris perintah lengkap.

[dilindungi email]:~$ Pkill -f “ping 7.7.7.7”

-u digunakan untuk mematikan semua proses yang dimiliki oleh pengguna.

[dilindungi email]:~$ Pkill -u jim

-i digunakan untuk pembunuhan proses yang tidak peka huruf besar-kecil oleh pkill.

[dilindungi email]:~$ Pkill -i firefox

-9 digunakan untuk mengirim sinyal mematikan.

[dilindungi email]:~$ Pkill -9 chrome

-15 digunakan untuk mengirim sinyal penghentian.

[dilindungi email]:~$ Pkill -15 vlc
lsof (Daftar File Terbuka)

Utilitas baris perintah ini digunakan untuk membuat daftar file yang dibuka oleh beberapa proses. Dan seperti yang kita ketahui, semua sistem UNIX/Linux mengenali semuanya sebagai file, jadi akan lebih mudah menggunakan perintah lsof untuk membuat daftar semua file yang dibuka.

[dilindungi email]:~$ lsof

Dalam tabel perintah lsof di atas, FD mewakili deskripsi file, cwd mewakili direktori kerja saat ini, txt berarti file teks, mem berarti file yang dipetakan memori, mmap berarti perangkat yang dipetakan memori, REG mewakili file biasa, DIR mewakili Direktori, rtd berarti direktori root. Ada opsi lain yang dapat Anda gunakan dengan perintah lsof.

Opsi untuk perintah lsof.

-c digunakan untuk daftar file yang terbuka dengan nama prosesnya.

[dilindungi email]:~$ lsof -c chrome

-u digunakan untuk membuat daftar file yang dibuka oleh pengguna.

[dilindungi email]:~$ lsof -u jim

-i digunakan untuk daftar proses yang dijalankan pada port.

[dilindungi email]:~$ lsof -i

+D digunakan untuk daftar file yang terbuka di bawah direktori.

[dilindungi email]:~$ lsof +D /home/

-p digunakan untuk daftar file yang terbuka oleh suatu proses.

[dilindungi email]:~$ lsof -p 1342

Mendaftar dan Mengelola Proses Dengan Perintah teratas

Dengan perintah top, Anda dapat menampilkan tampilan real-time dari proses sistem yang berjalan. Ini menampilkan proses tergantung pada penggunaan CPU. Anda dapat mengurutkan kolom sesuai dengan Anda. Perintah top juga memberikan beberapa informasi tentang sistem Anda, seperti berapa lama sistem telah berjalan atau berapa banyak pengguna yang terhubung ke sistem dan berapa banyak proses yang berjalan, berapa banyak CPU dan RAM yang digunakan, dan daftar masing-masing proses.

Ketik perintah di atas untuk membuat daftar proses yang sedang berjalan.

[dilindungi email]:~$ top

Tugas:total 291, 1 lari, 290 tidur, 0 berhenti, 0 zombie

%Cpu(s) :2.3us, 0.3sy, 0.0ni, 97.0id, 0.3wa, 0.0hi, 0.0si, 0.0st

MiB Mem:7880.6 total, 1259.9 gratis, 3176 digunakan, 3444,4 buff/cache

MiB Swap:2048,0 total, 2048,0 gratis, 0,0 digunakan. 4091.8 faedah Mem

PID PENGGUNA PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

3241 jim 20 0 20.7g 33512 10082 S 1.7 4.2 0.54.24 chrome

3327 jim 20 0 4698084 249156 86456 S 1.3 3.1 1:42.64 chrome

2920 jim 20 0 955400 410868 14372 S 1.0 5.1 7:51.04 chrome

3423 jim 20 0 4721584 198500 10106 S 1.0 2.5 0:49.00 chrome

3030 jim 20 0 458740 114044 66248 S 0,7 1,4 3:00,47 krom

3937 jim 20 0 4610540 104908 72292 S 0,7 1,3 0,05,91 chrome

1603 jim 20 0 825608 67532 40416 S 0,3 0,8 3:13,52 Xorg

1756 jim 20 0 4154828 257056 10060 S 0.3 3.2 5:53.31 gnome-s+

1898 jim 20 0 289096 29284 5668 S 0,3 0,4 1:06,28 fusuma

3027 jim 20 0 587580 14304 75960 S 0,3 1,8 9:43,59 krom

3388 jim 20 0 4674192 156208 85032 S 0.3 1.9 0:13.91 chrome

3409 jim 20 0 4642180 140020 87304 S 0.3 1.7 0:15.36 chrome

3441 jim 20 0 16.5g 156396 89700 S 0.3 1.9 0:25.70 chrome

….snip….

Anda juga dapat melakukan beberapa tindakan dengan perintah atas untuk membuat perubahan dalam proses yang sedang berjalan; berikut daftarnya di bawah ini.

  • u dengan menekan “u” Anda dapat menampilkan proses yang dijalankan oleh pengguna tertentu.
  • L dengan menekan “M” Anda dapat mengatur penggunaan RAM daripada penggunaan CPU.
  • P dengan menekan “P” Anda dapat mengurutkan berdasarkan penggunaan CPU.
  • 1 dengan menekan “1” beralih antar penggunaan CPU jika ada lebih dari satu.
  • R dengan menekan “R” Anda dapat membuat pengurutan keluaran Anda terbalik.
  • h dengan menekan “h” Anda dapat pergi ke bantuan dan tekan tombol apa saja untuk kembali.

Perhatikan proses mana yang memakan lebih banyak memori atau CPU. Proses-proses yang memakan lebih banyak memori dapat dimatikan, dan proses-proses yang memakan lebih banyak CPU dapat diubah agar tidak terlalu penting bagi prosesor.

Bunuh proses di atas: Tekan k dan tulis ID Proses yang ingin Anda bunuh. Kemudian ketik 15 atau 9 untuk membunuh secara normal atau segera; Anda juga dapat mematikan proses dengan perintah kill atau killall.

Perbaiki proses di atas: Tekan r dan tulis PID dari proses yang ingin Anda ubah. Ini akan meminta Anda untuk mengetikkan PID dari proses tersebut dan kemudian nilai nicing yang ingin Anda berikan pada proses ini antara -19 hingga 20 (-19 berarti paling penting dan 20 berarti paling penting).

Mendaftar &Mengelola Proses Dengan Monitor Sistem

Linux memiliki sistem monitor gnome untuk menampilkan proses yang berjalan lebih dinamis. Untuk memulai monitor sistem, tekan tombol windows dan ketik monitor sistem, klik ikonnya, dan Anda dapat melihat proses dalam kolom. Dengan mengklik kanan mereka, Anda dapat menghentikan, menghentikan, atau menghentikan proses.

Proses yang berjalan ditampilkan dengan akun pengguna dalam urutan abjad. Anda dapat mengurutkan proses berdasarkan judul bidang apa pun seperti CPU, Memori, dll., cukup klik pada mereka, dan mereka akan diurutkan; misalnya, klik pada CPU untuk melihat proses mana yang paling banyak menghabiskan daya CPU. Untuk mengelola proses, klik kanan pada proses tersebut dan pilih opsi yang ingin Anda lakukan dengan proses tersebut. Untuk mengelola proses, pilih opsi berikut.

  • Properti- tampilkan setelan lain yang terkait dengan suatu proses.
  • Peta Memori- tampilkan peta memori sistem untuk menunjukkan pustaka dan komponen lain mana yang digunakan dalam memori untuk proses tersebut.
  • Buka file- menunjukkan file mana yang dibuka oleh proses.
  • Ubah Prioritas- tampilkan bilah sisi tempat Anda dapat mengubah proses dengan opsi dari sangat tinggi hingga sangat rendah dan khusus.
  • Berhenti- menjeda proses hingga Anda memilih untuk melanjutkan.
  • Lanjutkan- memulai ulang proses yang dijeda.
  • Bunuh- Paksa mematikan proses secara instan.

Membunuh proses dengan membunuh dan membunuh

kill, dan perintah killall digunakan untuk Membunuh/mengakhiri proses yang sedang berjalan. Perintah ini juga dapat digunakan untuk mengirim sinyal yang valid ke proses yang sedang berjalan, seperti memberi tahu proses untuk melanjutkan, mengakhiri, atau membaca ulang file konfigurasi, dll. Sinyal dapat ditulis dalam dua cara dengan angka atau nama. Berikut ini adalah beberapa sinyal yang umum digunakan.

Deskripsi Nomor Sinyal

SIGHUP 1 Mendeteksi sinyal hang-up pada terminal pengontrol.

SIGINT 2 Diterjemahkan dari keyboard.

SIGQUIT 3 Keluar dari keyboard.

SIGILL 4 Instruksi ilegal.

SIGTRAP 5 Digunakan untuk menelusuri trape.

SIGABRT 6 digunakan untuk membatalkan sinyal dari abort(3).

SIGKILL 9 Digunakan untuk mengirim sinyal mematikan.

SIGTERM 15 Digunakan untuk mengirim sinyal terminasi.

SIGCONT 19,18,25 Digunakan untuk melanjutkan proses jika dihentikan.

SIGSTOP 17,19,23 Digunakan untuk menghentikan proses.

Nilai SIGCONT dan SIGSTOP yang berbeda digunakan di sistem operasi Unix/Linux yang berbeda. Untuk informasi rinci tentang jenis sinyal terminal sinyal man 7.

Menggunakan Perintah kill Untuk Mengirim Sinyal Ke Proses Dengan PID.

Catat proses yang ingin Anda kirimi sinyal mematikan. Anda dapat menemukan id proses (PID) dengan ps atau perintah teratas.

PID PENGGUNA PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

7780 jim 20 0 12596 4364 3460 R 33.3 3.2 13:54:12 atas

Proses teratas memakan 33,3% CPU. Jika Anda ingin menghentikan proses ini untuk menghemat penggunaan CPU, berikut beberapa cara untuk mengakhiri proses ini dengan perintah kill.

[dilindungi email]:~$ kill 7780

[dilindungi email]:~$ kill -15 7780 atau $ kill -SIGTERM 7780

[dilindungi email]:~$ kill -9 7780 atau $ kill -SIGKILL 7780

Menggunakan Perintah killall Untuk Mengirim Sinyal Ke Proses Berdasarkan Nama.

Dengan perintah killall, Anda tidak perlu mencari id proses; anda dapat mengirim sinyal mematikan ke proses dengan nama daripada id proses. Itu juga dapat mematikan lebih banyak proses daripada yang Anda inginkan jika Anda tidak hati-hati, misalnya, "killall chrome" akan mematikan semua proses chrome, termasuk yang tidak ingin Anda bunuh. Terkadang berguna untuk mematikan proses dengan nama yang sama.

Seperti perintah kill, Anda dapat mengetikkan sinyal berdasarkan nama atau nomor dalam perintah killall. Matikan semua proses yang berjalan dengan perintah killall; Anda hanya perlu mengetikkan nama dan sinyal yang ingin Anda kirim. mis., mengirim sinyal mematikan proses firefox menggunakan perintah killall, tulis perintah di bawah ini.

[dilindungi email]:~$ killall -9 firefox

atau

[dilindungi email]:~$ killall SIGKILL chrome

Mengubah prioritas proses dengan nice dan renice

Setiap proses di sistem Linux Anda memiliki nilai yang sangat baik, dan antara -19 hingga 20. Ini memutuskan proses mana yang akan mendapatkan lebih banyak akses CPU di sistem. Semakin rendah nilai nice, semakin banyak akses suatu proses ke proses CPU. Seperti -16 nilai bagus memiliki lebih banyak akses ke CPU daripada 18 nilai bagus. Hanya pengguna dengan hak akses root yang dapat menetapkan nilai negatif dari Nice. Pengguna biasa hanya dapat menetapkan nilai "bagus" antara 0 hingga 19. Pengguna biasa hanya dapat menetapkan nilai bagus yang lebih tinggi dan pada prosesnya sendiri. Pengguna root dapat menetapkan nilai bagus apa pun untuk proses apa pun.

Jika Anda ingin memberikan proses yang lebih mudah diakses oleh penggunaan CPU dengan menetapkan nilai Nice, ketik perintah berikut.

[dilindungi email]:~$ nice +3 chrome

Dan renungkan prosesnya

[dilindungi email]:~$ renice -n -6 3612

Kesimpulan

Berikut adalah panduan untuk mengelola sistem Linux Anda dengan ps, top, lsof, pstree, pkillll, kill, killall, nice, renice, dll. Beberapa proses menghabiskan sebagian besar penggunaan CPU dan RAM; mengetahui cara mengelolanya meningkatkan kecepatan dan kinerja sistem Anda dan memberi Anda lingkungan yang lebih baik untuk menjalankan proses apa pun yang Anda inginkan dengan lebih efisien.


Ubuntu
  1. Instal Dropbox di Ubuntu 14.10

  2. 30 Latihan Proses Linux Untuk Sysadmin

  3. Linux – Proses Init:Leluhur Semua Proses?

  1. Mengelola proses di Linux dengan kill dan killall

  2. Bagaimana Cara Membunuh Proses di Linux? Perintah untuk Mengakhiri

  3. MX Linux vs. Ubuntu

  1. Cara Mendaftar Proses yang Berjalan di Linux

  2. Unduh Ubuntu Linux

  3. Instal Gitlab di Ubuntu Linux