Apakah Anda membuka setidaknya lima tab lain di browser, mencoba mencari jawaban atas masalah Linux yang sedang Anda hadapi?
Ini bukan hal yang unik bagi Anda atau manusia pada umumnya. Mesin pun bisa melakukan banyak hal sekaligus. Dan seperti Anda, Linux juga mampu menjalankan banyak proses secara bersamaan. Baik Anda seorang developer yang menggunakan Linux secara profesional maupun pengguna biasa yang memakai Linux untuk aktivitas sehari-hari, Anda perlu memahami proses-proses paralel ini agar dapat mengendalikan sistem sepenuhnya. Manajemen proses dan kontrol sistem adalah aspek penting dalam menjalankan sistem Linux.
Untuk mengelola proses yang berjalan di sistem secara efisien, memantau aktivitas secara real-time, mendapatkan gambaran umum semua proses di latar belakang, serta mengontrol sumber daya sistem, Anda memerlukan pengetahuan teknis tentang manajemen proses. Perintah ps aux adalah perintah yang sangat berguna dan berperan penting dalam manajemen proses serta kontrol sistem. Dalam artikel ini, kita akan mempelajari lebih lanjut tentang perintah ps aux dan kasus penggunaannya. Kita juga akan membahas dasar-dasar cara kerja proses Linux.
Memahami Manajemen Proses di Linux
Saat bekerja dengan Linux, sebagian besar interaksi kita dengan sistem dilakukan melalui perintah. Di Linux, sebuah proses adalah eksekusi dari sebuah perintah. Manajemen proses Linux mencakup pengelolaan proses-proses yang dijalankan oleh suatu perintah. Anda bisa menghentikan, memulai, atau melanjutkan proses yang sebelumnya dihentikan. Anda juga bisa memanipulasi perintah yang sedang berjalan.
Ada dua jenis proses di Linux:
- Proses latar depan
- Proses latar belakang
Proses Foreground Linux
Proses foreground adalah proses yang sedang aktif dieksekusi dan biasanya memerlukan interaksi langsung dan real-time dengan pengguna. Selama proses foreground berjalan, eksekusi proses lain akan ditunda, sehingga Anda tidak bisa menjalankan perintah lain. Proses foreground menerima input dari keyboard sebagai standard input atau stdin. Agar tidak membingungkan, stdin dan stdout adalah aliran data Linux, bersama dengan stderr. Secara sederhana, ini adalah cara pengguna berinteraksi dengan proses dan memberikan data kepadanya. Ada pula standard output atau stdout yang dihasilkan proses berdasarkan fungsinya dan input yang diberikan. Proses foreground adalah mode eksekusi default di Linux.
Proses Background Linux
Proses background adalah kebalikan dari proses foreground. Proses ini tidak memerlukan interaksi pengguna dan tidak menguasai seluruh ruang terminal, sehingga proses lain tetap bisa berjalan. Jenis input dan output proses background pun berbeda. Biasanya proses ini tidak mengambil stdin, namun hasilnya tetap bisa ditampilkan sebagai stdout. Output dari proses background ditampilkan secara bersamaan dengan output proses foreground lainnya, sehingga Anda bisa memantau progres atau hasilnya tanpa mengganggu aktivitas lain yang sedang berjalan.
Karena eksekusi berbagai tugas di Linux bergantung pada command line, proses foreground bisa cukup menghambat. Menjalankan proses di background membebaskan terminal Anda untuk mengerjakan hal lain. Oleh karena itu, memindahkan tugas foreground ke background adalah langkah yang masuk akal. Untuk mengirim proses ke background Anda perlu menghentikannya terlebih dahulu dari eksekusi foreground. Caranya cukup dengan menekan CTRL+Z. Kemudian ketikkan perintah bg, dan proses yang dihentikan tadi akan berjalan kembali di background. Perintah fg akan membalikkan proses ini dan membawanya kembali ke foreground.
Status Proses: Sintaks, Perintah, dan Memahami Output
Manajemen proses yang efektif di Linux memerlukan pemahaman tentang status proses, yang dapat dipantau menggunakan perintah ps aux. Namun sebelum membahas lebih dalam perintah ps aux, mari kita pelajari berbagai status proses yang ada. Meskipun ada banyak jenis proses dan status proses, berikut adalah tabel yang memuat yang paling umum:
| Status proses | deskripsi | |
| Berjalan(R) | Proses sedang berjalan dan menggunakan sumber daya CPU. | |
| Tidur | Dapat Dihentikan (S) | Proses menunggu input atau event tertentu untuk dapat berjalan kembali. Saat ini proses tidak menggunakan sumber daya CPU. Ketika sumber daya tersedia atau sinyal diterima, proses akan dimulai kembali. |
| Tak Dapat Diganggu Gugat (D) | Sama seperti proses dalam interruptible sleep, proses uninterruptible sleep tidak menggunakan sumber daya CPU. Perbedaannya adalah proses ini tidak merespons sinyal apa pun dan hanya akan aktif kembali ketika sumber daya tersedia. | |
| Dihentikan(T) | Input pengguna atau event tertentu telah menghentikan proses sementara. Proses dalam status stopped tidak menggunakan sumber daya CPU. | |
| Mati(X) | Proses telah dihentikan dan tidak lagi ada. | |
Pemahaman yang baik tentang status-status proses ini merupakan aspek penting dalam mengelola dan melakukan troubleshooting pada sistem Linux secara efektif. Sekarang, mari kita bahas sintaks dan perintah untuk mendapatkan status proses di Linux, serta cara membaca outputnya.
Sintaks dan Perintah untuk Mendapatkan Status Proses
Anda bisa mendapatkan status proses di Linux menggunakan sintaks dasar perintah ps:
ps [process name]
Ada pula opsi lain yang dapat digunakan bersama perintah ps:
kepada: Opsi ini menampilkan daftar lengkap semua proses yang berjalan di sistem. Informasi yang disediakan mencakup process ID (PID), parent process ID (PPID), penggunaan CPU dan memori, serta status proses. Output yang dihasilkan perintah ps aux jauh lebih rapi, lebih mudah dibaca, dan memuat informasi yang lebih berguna dibanding perintah ps dasar.
ef: Opsi ini menampilkan daftar proses dalam format lengkap beserta detail tambahan, termasuk hierarki proses dalam struktur berbentuk pohon.
l: Opsi ini menampilkan format daftar panjang yang menyajikan informasi lebih detail tentang proses-proses yang ada.
Memahami Output
Saat Anda menjalankan perintah ps dengan opsi yang diinginkan, perintah tersebut menghasilkan output yang merepresentasikan proses-proses yang sedang berjalan di sistem Anda. Output terdiri dari kolom-kolom yang menampilkan berbagai atribut proses, termasuk process ID (PID), parent process ID (PPID), penggunaan CPU, penggunaan memori, status proses, tipe terminal, dan nama perintah.
Berikut penjelasan dari masing-masing kolom tersebut:
PID: Kolom ini menampilkan ID unik dari proses.
TTY: Kolom ini menampilkan jenis terminal yang digunakan pengguna saat login.
WAKTU: Kolom ini menunjukkan seberapa banyak CPU yang digunakan oleh proses ini, dalam satuan menit dan detik.
CMD: Kolom ini menampilkan nama perintah yang memulai proses ini.
Menganalisis informasi dari perintah ps memberi Anda pemahaman yang lebih dalam tentang perilaku mesin Linux Anda.
Teknik Lanjutan ps untuk Manajemen Proses dengan Perintah ps
Mari kita telusuri beberapa fitur lanjutan dari perintah ps dan cara memanfaatkannya secara efektif:
1. Penyortiran Proses
Perintah ps aux dapat digunakan untuk mengurutkan output berdasarkan kolom yang berbeda. Misalnya, Anda dapat mengurutkan proses berdasarkan ID proses atau penggunaan CPU untuk melihatnya dalam urutan yang diinginkan.
Berikut contoh mengurutkan proses berdasarkan ID proses menggunakan ps aux:
ps aux –-sort pid
Perintah head digunakan untuk mengambil hanya lima baris pertama dari output.

2. Visualisasi Pohon Proses
Jika ingin melihat hubungan parent-child antar proses secara jelas, Anda dapat menggunakan perintah ps dengan opsi forest.
ps -aux --forest

Untuk melihat hubungan antar proses dalam pola seperti pohon, Anda juga dapat menggunakan perintah pstree. Perintah ini menghasilkan output yang lebih mudah dipahami dan menggambarkan hierarki antar proses dengan baik. Untuk menggunakannya, ketik perintah berikut:
pstree [pid or username]
Dengan memberikan PID pada perintah ini, Anda memberi tahu perintah tersebut untuk menjadikan proses itu sebagai akar dari pohon.
3. Proses Penyaringan
Bayangkan Anda ingin bekerja dengan sekumpulan proses tertentu; misalnya, Anda ingin menampilkan semua proses milik salah satu pengguna. Pemfilteran proses berdasarkan suatu karakteristik dapat dilakukan menggunakan perintah ps. Dalam contoh ini, proses disaring berdasarkan nama pengguna.
ps -u [username]

Perintah ps aux grep dapat menyaring proses berdasarkan pola atau kata kunci apa pun yang Anda berikan. Lihat kode di bawah ini sebagai contoh:

Perintah ini pertama-tama menampilkan semua proses, lalu meneruskan outputnya ke perintah grep untuk menyaring daftar panjang tersebut berdasarkan ID proses. Pada gambar di atas, Anda dapat melihat daftar semua proses yang memiliki angka 15 dalam informasinya.
Untuk informasi lebih lanjut tentang perintah ps dan kemampuannya, Anda dapat membaca halaman manual perintah ini. Kode di bawah ini akan menampilkan halaman manual tersebut:
man ps
Mengelola Prioritas Tugas di Linux
Untuk lebih memahami cara kerja manajemen proses di Linux, kita perlu membahas prioritas proses dan cara mengubahnya. Bayangkan situasi di mana Anda menjalankan beberapa proses sekaligus, dan CPU kelebihan beban. Jika ingin mengelola sumber daya agar tetap berjalan dengan baik dalam situasi ini, Anda perlu mengubah prioritas tugas yang sedang berjalan. Setiap proses di Linux memiliki nilai prioritas. Nilai ini membantu kernel dalam menentukan urutan eksekusi tugas. Angka prioritas berkisar dari -20 hingga 19, di mana 19 adalah tugas dengan prioritas terendah dan -20 adalah yang paling mendesak. Proses dengan prioritas tertinggi mendapat lebih banyak waktu CPU dibandingkan proses lainnya. Nilai prioritas ini sering disebut sebagai nilai "nice", di mana nilai nice yang lebih rendah berarti prioritas yang lebih tinggi.
Anda dapat menggunakan perintah nice dan renice untuk mengalokasikan sumber daya sistem secara efisien.
Namun sebelum mengubah prioritas proses, mari kita lihat dulu kasus penggunaan pertama dari perintah ps.
- Menampilkan prioritas saat ini dari semua proses menggunakan perintah ps:
Perintah ini menampilkan daftar semua proses beserta ID proses (PID), nama perintah, dan prioritas saat ini (nilai nice):
ps -eo pid,cmd,nice

- Memulai proses dengan prioritas tinggi secara default menggunakan perintah nice:
Anda dapat memulai proses dengan prioritas pilihan Anda menggunakan perintah ini:
nice -n [priority] [command]
Ganti [priority] dengan nilai negatif yang mewakili tingkat prioritas yang diinginkan, dan [command] dengan perintah yang ingin Anda jalankan.
I'm ready to translate UI labels to Indonesian. Please provide the English text you'd like me to translate.

- Mengubah prioritas proses yang sedang berjalan:
renice -n [priority] -p [PID]
Ganti ID proses yang ingin Anda ubah dengan [PID].
Jika Anda membutuhkan mesin Linux yang andal untuk menjalankan berbagai jenis tugas, sebuah Linux VPS adalah solusi terbaik untuk Anda. Cloudzy menawarkan berbagai paket Linux VPS dengan distro pilihan Anda yang sudah terpasang. Dengan berbagai keunggulan seperti dukungan 24/7, garansi uang kembali 30 hari, dan jaminan uptime 99,95%, Cloudzy tetap menjaga harganya tetap terjangkau. Harga paket Linux VPS kami mulai dari $4,95/bulan.
Dapatkan Linux VPS paket ekonomi atau premium untuk kebutuhan hosting website atau remote desktop, dengan harga paling terjangkau. VPS berjalan di atas Linux KVM untuk efisiensi lebih tinggi, didukung hardware bertenaga dengan penyimpanan NVMe SSD untuk kecepatan optimal.
Baca SelengkapnyaKesimpulan
Singkatnya, menguasai manajemen proses dan kontrol sistem adalah hal yang wajib bagi administrator sistem, penggemar Linux yang ingin terus belajar, maupun pengguna Linux pada umumnya. Memahami kemampuan dan fungsi perintah ps dapat memudahkan Anda dalam mempelajari manajemen proses. Itulah mengapa artikel ini membahas kasus-kasus penggunaan penting dari perintah ps sekaligus memberikan pengenalan tentang proses di Linux.
Pertanyaan yang Sering Diajukan
Apa itu perintah ps aux di Linux?
Perintah ps aux di Linux adalah perintah yang umum digunakan untuk mendapatkan informasi tentang proses yang sedang berjalan. Perintah ini menampilkan daftar proses secara lengkap dalam format yang mudah dibaca, termasuk ID proses (PID), penggunaan CPU dan memori, status eksekusi, serta detail penting lainnya.
Apa dua jenis proses di Linux?
Proses foreground dan proses background. Proses foreground menempati terminal selama berjalan dan tidak mengizinkan eksekusi lain secara bersamaan. Proses background berjalan di latar belakang dan tidak mengambil alih seluruh terminal.
Bagaimana cara melihat daftar proses yang berjalan di sistem Linux saya?
Daftar proses yang berjalan di sistem Linux Anda dapat dilihat menggunakan perintah seperti ps, top, atau htop. Sebagai contoh, perintah ps aux di Linux memberikan informasi lengkap tentang semua proses yang sedang berjalan.