Perintah top Linux: pantau CPU, memori, dan proses secara berkala

Perintah top memperbarui tampilan penggunaan Central Processing Unit (CPU, prosesor), memori, dan status proses secara berkala. Saat komputer atau server melambat, gunakan top untuk melihat pekerjaan yang memakai sumber daya dan apakah pola itu bertahan dalam beberapa pembaruan. Tekan q untuk keluar dari layar top.

Bagian atas layar merangkum sistem, sedangkan daftar di bawahnya menampilkan proses. Angka tinggi pada satu pembaruan saja belum cukup untuk menentukan masalah; perhatikan durasi, pekerjaan yang memang sedang dilakukan, dan perubahan dari waktu ke waktu.

Sintaks dan persiapan

top [OPSI]

OPSI adalah penanda untuk pilihan yang diperlukan. Contoh berikut mengacu pada top dari procps-ng pada Linux. Periksa top -V, top --help, dan man top pada sistem tujuan karena opsi, kolom, satuan, dan konfigurasi awal dapat berbeda menurut implementasi.

Untuk mode interaktif, jalankan dari terminal yang dapat menerima tombol dan menampilkan layar yang diperbarui. Jika tujuan Anda hanya mengambil teks untuk catatan atau pengolahan berikutnya, gunakan mode batch dengan batas jumlah tampilan. Definisi opsi dan tombol tersedia dalam manual top dari procps-ng.

Amati proses pada layar interaktif

top
  1. Baca ringkasan beban, CPU, dan memori di bagian atas, lalu cari pekerjaan yang menonjol pada daftar proses.
  2. Tekan P huruf besar untuk mengurutkan menurut penggunaan CPU, atau M huruf besar untuk mengurutkan menurut penggunaan memori.
  3. Amati beberapa pembaruan. Catat process ID (PID), yaitu nomor identitas proses, perintah, dan apakah penggunaan sumber dayanya terus tinggi atau hanya sesaat.
  4. Tekan q untuk menutup top setelah selesai.

P dan M merupakan tombol di dalam top, bukan perintah yang diketik pada prompt shell. Gunakan h atau ? untuk melihat bantuan tombol pada implementasi yang terpasang. Mengubah urutan tampilan membantu pembacaan; itu tidak dengan sendirinya menurunkan penggunaan sumber daya proses.

Fokus pada PID yang telah ditemukan

top -p 1234

1234 adalah PID contoh. Ganti dengan nomor proses yang benar-benar ingin diamati. Anda dapat memakai ps untuk membaca PID dan perintah proses terlebih dahulu, lalu kembali ke top untuk mengamati perubahannya.

Hasil yang diharapkan adalah daftar tugas yang dibatasi ke PID tersebut jika prosesnya masih ada dan terlihat. Jika tidak ada baris yang sesuai, periksa apakah proses telah selesai atau PID yang dipilih salah. Nama proses yang sama dapat dimiliki beberapa proses, sehingga pastikan nomor dan perintahnya cocok.

Ambil satu tampilan sebagai teks

top -b -n 1

-b memakai mode batch, sedangkan -n 1 membatasi keluaran ke satu tampilan lalu top selesai. Mode ini tidak menerima tombol interaktif. Satu tampilan berguna sebagai catatan keadaan saat itu, tetapi tidak memperlihatkan pola berulang.

Untuk membandingkan beberapa pembaruan, misalnya, top -b -d 2 -n 3 menghasilkan paling banyak tiga tampilan dengan jeda dua detik antarpembaruan. Bandingkan tampilan berikutnya dan jangan menjadikan satu angka awal sebagai bukti beban yang terus berlangsung.

Jika hanya ingin melihat awal keluaran, contoh berikut meneruskan hasil ke head:

top -b -n 1 | head -n 8

head -n 8 hanya mengambil delapan baris pertama yang diterimanya. Jumlah baris ringkasan bergantung pada konfigurasi; hasil potongan itu tidak dijamin memuat judul kolom atau daftar proses. Gunakan keluaran batch lengkap jika sedang memeriksa satu proses.

Berikut skema struktur layar, bukan keluaran lengkap dan bukan angka pengukuran yang harus muncul di komputer Anda. Tanda titik-titik menandai bagian yang sengaja disingkat:

top - ... load average: ...
Tasks: ... total, ... running
%Cpu(s): ... us, ... sy, ... id
MiB Mem : ... total, ... free, ... used
    PID USER      %CPU %MEM COMMAND

Kolom PID mengidentifikasi proses, USER menunjukkan pengguna, %CPU menunjukkan penggunaan CPU tugas, %MEM menunjukkan proporsi memori fisik yang ditempati memori residen proses, dan COMMAND menunjukkan perintah. Baca satuan yang tercetak; MiB berarti mebibyte, yaitu 1.048.576 byte. Tampilan, judul kolom, dan satuan dapat berubah sesuai pengaturan.

Baca beban dan memori bersama penggunaan CPU

Load average pada Linux merangkum tugas yang dapat dijalankan atau menunggu dalam keadaan tertentu, termasuk menunggu masukan/keluaran disk, untuk rentang 1, 5, dan 15 menit. Nilai itu bukan persentase CPU. Hubungkan dengan jumlah CPU yang tersedia dan pola aktivitas, bukan satu ambang yang dianggap berlaku untuk semua mesin. Definisi sumbernya dijelaskan dalam manual /proc/loadavg.

Pada baris CPU, us berhubungan dengan waktu program pengguna, sy dengan pekerjaan kernel, dan id dengan waktu idle atau menganggur. Ringkasan tersebut berbeda dari baris penggunaan satu proses. Cocokkan proses yang terlihat sibuk dengan pola ringkasan sistem.

Memori free yang kecil tidak selalu berarti sistem kehabisan memori karena sebagian memori dipakai untuk cache. Jika tersedia, baca juga avail atau available. MemAvailable memperkirakan memori yang dapat digunakan aplikasi baru tanpa swap, termasuk bagian yang dapat direklamasi. Definisi ini dijelaskan dalam manual statistik memori Linux. Jangan menyimpulkan keadaan memori hanya dari satu nilai free atau %MEM proses.

Opsi utama

Opsi Kegunaan
-p PID Membatasi tugas yang diamati menurut PID yang disebutkan.
-d DETIK Menentukan jeda pembaruan layar.
-b Memakai keluaran batch tanpa masukan tombol interaktif.
-n JUMLAH Membatasi jumlah tampilan sebelum top selesai.

DETIK dan JUMLAH adalah penanda yang diganti dengan angka yang diperlukan. Pilih jeda yang membuat perubahan mudah diamati; pengambilan satu tampilan dan pengamatan beberapa tampilan menjawab pertanyaan yang berbeda.

Bedakan pengamatan, keluar, dan pengiriman sinyal

Pada procps-ng, %CPU tugas berkaitan dengan interval sejak pembaruan sebelumnya. Proses dengan beberapa thread dapat menunjukkan lebih dari 100% pada sistem multiprosesor, bergantung pada mode tampilan. Mode Irix dan Solaris memakai normalisasi berbeda, sehingga jangan menganggap setiap angka di atas 100% sebagai kesalahan.

Tombol q hanya keluar dari top; proses yang diamati tetap berjalan. Sebaliknya, k meminta PID dan sinyal untuk dikirim ke tugas yang dipilih, sehingga dapat memengaruhi proses sebenarnya. Untuk sekadar memantau, gunakan tombol pengamatan dan q. Sebelum mempertimbangkan sinyal, periksa kembali PID serta perintah karena proses dapat berakhir dan nomor PID dapat digunakan kembali.

Jika opsi ditolak atau bidang tidak sama dengan contoh, cocokkan dengan manual implementasi terpasang. Jika layar terlalu sempit, perlebar terminal atau gunakan keluaran batch agar konteks yang diperlukan tetap terbaca. Tidak terlihatnya suatu baris juga perlu dibaca bersama pilihan PID dan pengaturan tampilan.

FAQ

Bagaimana cara keluar dari top?

Tekan q di layar utama interaktif top. Itu adalah tombol di dalam program, bukan perintah shell, dan tidak menghentikan proses lain yang sedang diamati.

Apakah top -b -n 1 cukup untuk membuktikan penggunaan CPU terus tinggi?

Tidak. Perintah itu mengambil satu tampilan. Amati beberapa pembaruan dengan jeda yang sesuai serta perhatikan peran proses dan keadaan sistem sebelum menyimpulkan ada beban yang berkepanjangan.