Manajemen Proses Linux dengan Command Line

Tipe Proses
Ada beberapa tipe proses yang berjalan, khususnya di sistem operasi, yaitu foreground dan background.

  • Foreground Processes
    Foreground process adalah proses yang berjalan melalui inisiasi dan dapat dikontrol melalui terminal session. Proses ini terkadang juga disebut dengan nama interactive processes. Pengertian lain, proses ini berjalan setelah dijalankan oleh user. Sehingga tidak dapat berjalan secara otomatis.
  • Background Processes
    Kebalikan dari foreground process, proses ini tidak dikenali pada terminal session. Sehingga membuat proses ini tidak mengharapkan input apapun dari user.

Bagaimana Linux Mengidentifikasi Proses?
Linux merupakan sistem operasi yang Multi-User System, ini memungkinkan tidak hanya satu user saja berjalan pada waktu yang sama. Agar kernel dapat membedakan setiap instance, maka perlu dibedakan masing-masing proses secara unik.

Cara membedakannya menggunakan Process ID (PID) dan untuk parent processes menggunakan Parent ID (PPID). Jadi ada dua kategori proses yang berjalan pada sistem operasi Linux, yaitu:

  • Parent Processes
    Proses yang membuat proses lain pada saat run-time.
  • Child Processes
    Proses yang dibuat oleh proses lain pada saat run-time.

Apa itu Daemons?
Daemons adalah tipe background processes yang berjalan bersamaan dengan sistem operasi (startup) dan tetap berjalan sebagai service; tidak pernah berhenti. Daemons berjalan sebagai sistem itu sendiri sebagai service. Bagaimanapun, proses ini dapat mengontrol user menggunakan proses init.

Jadi daemons ini adalah proses-proses yang dibuat dengan tujuan tidak dapat diganggu oleh user. Selama sistem operasi berjalan, maka proses ini harus juga tetap berjalan.

Macam-Macam Manajemen Proses Linux
Ada banyak sekali perintah yang dapat digunakan untuk melakukan manajemen proses Linux. Namun di antara proses-proses itu ada dua proses yang paling banyak digunakan, yaitu “ps” dan “top”. Kedua perintah ini biasanya digunakan oleh pengguna Linux khususnya System Administrator untuk melihat proses yang banyak menggunakan sumber daya (resource).

Menampilkan Semua Proses Shell Aktif/Berjalan
Perintah ini dapat Anda gunakan untuk menampilkan semua proses yang saat ini sedang berjalan.

1. Perintah “top”
“top” adalah aplikasi di Linux yang dijalankan melalui Terminal di Linux. Aplikasi ini digunakan untuk memanajemen proses Linux tanpa menggunakan GUI. Saat dieksekusi, aplikasi ini akan menampilkan daftar semua proses yang sedang berjalan dan setiap detik akan diperbaharui. Proses yang ditampilkan pada perintah “top” adalah yang paling besar menggunakan sumber daya.

Tampilan perintah “top” dapat Anda lihat pada gambar di bawah ini:

Aplikasi ini didesain tidak perlu menggunakan mouse, mungkin tujuannya memang digunakan untuk server. Sehingga semua fungsi dilakukan menggunakan keyboard. Berikut ini beberapa keyboard shortcut yang dapat Anda gunakan untuk navigasi:

Keyboard
Shortcut
Fungsi
h” atau “?Menampilkan jendela bantuan.
fMenghapus atau menambahkan field di layout.
lMenampilkan atau menghilangkan tampilan informasi beban rata-rata dan informasi uptime.
mMenampilkan atau menghilangkan tampilan informasi memori.
PMengurutkan proses berdasarkan penggunaan CPU.
qMenutup aplikasi atau jendela pada session saat itu.
spaceDigunakan untuk memperbaharui tampilan atau me-refresh tampilan dengan data terbaru tanpa menunggu waktu refresh.

Saat menjalankan perintah “top”, Anda dapat menggunakan beberapa opsi tampilan yang ingin ditampilkan. Opsi-opsi tersebut beberapa dapat Anda lihat pada tabel di bawah.

-h atau -vHelp atau Version: Digunakan untuk menampilkan user manual penggunaan “top” dan menampilkan versi yang terinstal.
-HThreads-mode operation: Digunakan untuk menampilkan thread secara terpisah.
-sSecure-mode operation: Menjalankan “top” dengan mode secure.
   -u atau -UUser-filter-mode: Digunakan untuk menampilkan proses pada user tertentu saja.

Masih banyak opsi lainnya yang dapat Anda gunakan sesuai dengan kebutuhan informasi yang ingin didapatkan. Lengkapnya, Anda dapat menggunakan perintah “man top” untuk tampilan dokumentasi dan user manual dari aplikasi yang digunakan.

2. Perintah “ps”
“ps” adalah aplikasi di Linux yang digunakan untuk menampilkan aktif proses yang berjalan pada sistem. Aplikasi ini dapat Anda gunakan untuk melakukan manajemen proses Linux. Tampilan hasilnya seperti di bawah ini.

Ada beberapa opsi yang dapat Anda gunakan ketika menggunakan “ps” sebagai aplikasi monitoring proses.

-eDigunakan untuk menampilkan semua proses.
-CDigunakan untuk menyaring proses berdasarkan nama/perintah.
-fDigunakan untuk menampilkan semua informasi proses secara lengkap.
-rDigunakan untuk menampilkan proses yang sedang berjalan.
-uDigunakan untuk menampilkan proses pada user tertentu saja. Biasanya diikuti dengan menggunakan nama user yang ingin dilihat prosesnya.
-oDigunakan untuk menampilkan proses yang menggunakan kata kunci tertentu saja.
–pidDigunakan untuk menampilkan informasi proses berdasarkan Process ID (PID).
–ppidDigunakan untuk menampilkan informasi proses berdasarkan Parent Process ID (PPID).

Anda dapat menggunakan beberapa opsi sekaligus. Jadi mengkombinasikan antara satu opsi dengan opsi yang lainnya. Misalnya ketika ingin menampilkan proses dari user “tridaya.cloud.com”. Jadi perintah yang digunakan seperti di bawah ini:

Jika perintah di atas dieksekusi, maka hasil yang akan muncul seperti gambar di bawah ini.

Atau, jika ingin mengurutkan informasi berdasarkan penggunaan CPU terbesar dapat Anda lakukan dengan menggunakan perintah.

Hasilnya akan menjadi seperti ini.

Anda juga dapat menyaring kolom mana saja yang ingin ditampilkan menggunakan perintah di bawah ini.

Hasil yang ditampilkan seperti gambar di bawah ini.

Sedangkan jika ingin melihat informasi proses secara keseluruhan biasanya menggunakan perintah “ps -aux”.

Informasi lengkap terkait dengan kegunaan dan fungsi “ps” dapat Anda lihat menggunakan perintah “man ps”.

Menghentikan Proses Linux
Agar dapat melakukan manajemen proses Linux, tentu saja harus dapat menghentikan proses yang sedang berjalan.

Pada kasus tertentu, Anda dapat menghentikan proses secara paksa. Misalnya saja ketika sebuah proses menggunakan sumber daya terlalu tinggi. Biasanya hal ini membuat kinerja perangkat menjadi lambat atau bahkan dapat menyebabkan ‘hang’.

Biasanya untuk mencegah dan mengatasi ini dilakukan penanganan atau mematikan proses yang tidak terlalu dibutuhkan. Salah satu caranya adalah dengan menggunakan perintah “kill”. Perintah ini digunakan untuk mengirimkan sinyal ke proses untuk menghentikan aktivitasnya.

Contohnya seperti di bawah ini.

Pada gambar di atas kita menggunakan perintah “$ kill -9 7684”. Angka -9 pada perintah di atas menunjukkan sinyal untuk menghentikan prosesnya. Kemudian 7684 adalah PID yang dipunya oleh aplikasi Gedit. Sehingga jika perintah di atas dieksekusi, hasilnya adalah aplikasi Gedit akan berhenti/ditutup.

Menghentikan Proses Menggunakan Perinah “top”
Selain menggunakan kill, Anda juga dapat menggunakan perintah “top” untuk menampilkan informasi proses yang berjalan. Pada jendela top, Anda cukup menekan tombol “k” untuk menampilkan opsi kill. Kemudian masukkan PID aplikasi yang ingin dihentikan.

Menghentikan Semua Proses yang Berjalan Menggunakan Nama Aplikasi
Anda dapat menghentikan semua proses yang sedang berjalan melalui nama aplikasinya, menggunakan dua perintah di bawah ini. Sebagai contoh, aplikasi yang ingin dihentikan adalah Firefox.