Lewati ke isi

Server & Infrastruktur

Cara Melihat Proses yang Berjalan dengan top dan htop

Cara membaca top dan htop di server Linux: load average, CPU, RAM, status proses, mengurutkan pemakai CPU dan memori, serta tombol pentingnya.

Terbit 5 menit baca

Jawaban singkat

Jalankan top (selalu tersedia) atau htop (lebih mudah dibaca) untuk melihat proses yang memakai CPU dan RAM secara langsung. Baca dulu baris load average, CPU, dan memori, lalu urutkan proses dengan P untuk CPU atau M untuk memori di top, atau F6 di htop.

Daftar isi
  1. Bagaimana membaca proses dengan top dan htop?
  2. Langkah 1: Jalankan top
  3. Langkah 2: Baca ringkasan di bagian atas
  4. Langkah 3: Pahami kolom daftar proses
  5. Langkah 4: Gunakan tombol interaktif top
  6. Langkah 5: Pasang dan buka htop
  7. Langkah 6: Gunakan tombol htop
  8. Langkah 7: Ambil cuplikan untuk dicatat
  9. Apa beda top dan htop?
  10. Pertanyaan yang sering diajukan
  11. Checklist singkat

Server tiba-tiba lambat, kipas grafik CPU di panel penyedia melonjak, atau website mulai sering timeout. Pertanyaan pertama yang harus dijawab: proses apa yang sedang bekerja keras?

Jawabannya ada di top dan htop. Keduanya menampilkan daftar proses yang berjalan beserta pemakaian CPU dan memorinya, diperbarui setiap beberapa detik. top sudah terpasang di hampir semua distro, sedangkan htop perlu dipasang tetapi tampilannya berwarna dan lebih mudah dipakai. Langkah di bawah membawamu dari membuka keduanya sampai menemukan proses penyebab masalah.

Bagaimana membaca proses dengan top dan htop?

Langkah 1: Jalankan top

top

Layar terbagi dua. Bagian atas adalah ringkasan sistem, bagian bawah adalah daftar proses. Tekan q untuk keluar.

Langkah 2: Baca ringkasan di bagian atas

Lima baris pertama berisi informasi paling penting:

  • load average: tiga angka untuk rata-rata 1, 5, dan 15 menit terakhir. Angka ini menghitung proses yang sedang berjalan atau menunggu giliran (termasuk menunggu disk). Bandingkan dengan jumlah vCPU dari perintah nproc. Load 4 pada server 4 vCPU berarti penuh, load 4 pada server 1 vCPU berarti antrean panjang.
  • Tasks: jumlah proses dan statusnya. Perhatikan bila angka zombie terus naik.
  • %Cpu(s): us untuk aplikasi, sy untuk kernel, id untuk menganggur, wa untuk menunggu disk, dan st (steal) untuk waktu yang diambil mesin induk di VPS.
  • MiB Mem dan MiB Swap: total, terpakai, dan cache. Lihat kolom avail Mem, yaitu memori yang masih bisa dipakai aplikasi. Angka free yang kecil belum tentu masalah, karena Linux memakai RAM kosong untuk cache.

Nilai wa yang tinggi sementara us rendah adalah tanda klasik bahwa yang lambat adalah disk, bukan CPU. Kasus seperti ini dibahas di server lambat padahal CPU rendah.

Langkah 3: Pahami kolom daftar proses

KolomArti
PIDNomor proses, dipakai saat ingin menghentikannya
USERAkun pemilik proses
PR, NIPrioritas dan nilai nice (makin kecil, makin diutamakan)
VIRTMemori virtual yang dipesan, sering jauh lebih besar dari pemakaian nyata
RESMemori fisik yang benar-benar dipakai
SHRBagian RES yang dibagi dengan proses lain
SStatus: R berjalan, S tidur, D menunggu I/O, Z zombie, T dihentikan
%CPU, %MEMPersentase CPU dan RAM
TIME+Total waktu CPU yang sudah dipakai
COMMANDNama program

Untuk menilai pemakaian RAM, lihat RES, bukan VIRT. Di server dengan beberapa inti, %CPU satu proses bisa melebihi 100%, karena 100% berarti satu inti penuh.

Langkah 4: Gunakan tombol interaktif top

Saat top terbuka, tekan:

  • P: urutkan berdasarkan CPU (bawaan).
  • M: urutkan berdasarkan memori.
  • 1: tampilkan pemakaian setiap inti CPU secara terpisah.
  • c: tampilkan perintah lengkap, berguna untuk membedakan banyak proses php-fpm atau node.
  • u lalu nama user: tampilkan proses milik user tertentu saja, misalnya www-data.
  • E dan e: ganti satuan memori di ringkasan dan daftar proses (KiB, MiB, GiB).
  • W: simpan tampilan saat ini sebagai pengaturan bawaan.

Kamu juga bisa langsung memfilter dari awal, misalnya top -u mysql atau top -p 1234 untuk memantau satu PID.

Langkah 5: Pasang dan buka htop

sudo apt install htop          # Ubuntu dan Debian
sudo dnf install epel-release  # AlmaLinux 9, htop ada di EPEL
sudo dnf install htop
htop

Bagian atas htop menampilkan bar per inti CPU, bar memori, dan swap. Warna bar punya arti (misalnya bagian aplikasi dan kernel dibedakan); tekan F1 untuk melihat keterangannya.

Langkah 6: Gunakan tombol htop

  • F6 atau >: pilih kolom untuk mengurutkan.
  • F3 atau /: cari proses berdasarkan nama.
  • F4 atau \: filter, hanya menampilkan proses yang cocok.
  • F5 atau t: tampilan pohon, menunjukkan proses induk dan anak. Sangat membantu untuk melihat worker mana milik service apa.
  • u: filter berdasarkan user.
  • H: sembunyikan atau tampilkan thread milik program.
  • Spasi: tandai beberapa proses sekaligus.
  • F9: kirim sinyal ke proses yang dipilih (misalnya menghentikannya).
  • F2: pengaturan tampilan, kolom, dan warna.
  • F10 atau q: keluar.

Bila tombol F tidak berfungsi di aplikasi terminalmu, klik langsung tulisan di baris bawah htop atau gunakan tombol huruf padanannya.

Langkah 7: Ambil cuplikan untuk dicatat

Kadang kamu perlu menyimpan kondisi saat itu, misalnya untuk dilaporkan ke tim atau dibandingkan nanti:

top -b -n 1 > top-$(date +%F-%H%M).txt
ps aux --sort=-%cpu | head -15
ps aux --sort=-%mem | head -15

Opsi -b menjalankan top dalam mode batch, dan -n 1 hanya mengambil satu kali tampilan. Untuk pemantauan terus-menerus dengan grafik dan peringatan, alat seperti di metrik server yang wajib dipantau lebih cocok daripada membuka top berulang kali.

Apa beda top dan htop?

Kebutuhantophtop
Tersedia bawaanYaPerlu dipasang
Urut CPU / memoriP / MF6 lalu pilih kolom
Per inti CPUTekan 1Tampil otomatis
Cari prosesTidak ada pencarian langsungF3
Tampilan pohonV (versi baru)F5
Hentikan prosesk lalu PIDF9
KeluarqF10 atau q

Pertanyaan yang sering diajukan

Kenapa RAM terlihat hampir habis padahal server baik-baik saja?

Linux memakai RAM yang menganggur untuk cache file supaya akses disk lebih cepat. Lihat angka avail Mem di top atau kolom available di free -h. Selama angka itu masih longgar dan swap tidak terus bertambah, kondisi masih aman.

Load average berapa yang dianggap bahaya?

Tidak ada angka mutlak. Patokan kasarnya, load yang terus di atas jumlah vCPU selama berjam-jam berarti ada antrean kerja. Lonjakan sebentar saat backup atau cron berjalan masih wajar.

Apa itu proses zombie dan apakah berbahaya?

Zombie adalah proses yang sudah selesai tetapi belum "dijemput" oleh proses induknya. Zombie tidak memakai CPU atau RAM, tetapi jumlah yang terus bertambah menandakan bug pada program induknya.

Apakah htop memberatkan server?

Sangat ringan untuk pemakaian sesekali. Hindari membiarkannya terbuka berhari-hari di banyak sesi, dan pakai alat monitoring khusus untuk pemantauan jangka panjang.

Checklist singkat

  • Cek load average dan bandingkan dengan nproc.
  • Lihat wa dan st di baris CPU sebelum menyalahkan aplikasi.
  • Nilai memori dari avail Mem dan kolom RES, bukan VIRT.
  • Urutkan dengan P atau M untuk menemukan proses terberat.
  • Simpan cuplikan dengan top -b -n 1 sebelum mengambil tindakan.
  • Bila proses perlu dihentikan, catat PID-nya lalu lanjutkan ke cara mematikan proses yang macet.

Sumber & referensi

Baca juga