Perintah TOP Linux
Salah satu perintah paling dasar untuk memantau proses di Linux adalah perintah teratas. Seperti namanya, ini menunjukkan proses teratas berdasarkan kriteria tertentu seperti penggunaan cpu atau penggunaan memori.
Proses tercantum dalam daftar dengan beberapa kolom untuk detail seperti nama proses, pid, pengguna, penggunaan cpu, penggunaan memori.
Terlepas dari daftar proses, perintah teratas juga menunjukkan statistik singkat tentang beban sistem rata-rata, penggunaan cpu, dan penggunaan ram di atas.
Postingan ini menunjukkan kepada Anda beberapa contoh yang sangat sederhana tentang cara menggunakan perintah top untuk memantau proses di mesin atau server linux Anda.
Perhatikan varian perintah "atas" Anda
Ketahuilah bahwa perintah teratas hadir dalam berbagai varian dan masing-masing memiliki serangkaian opsi dan metode penggunaan yang sedikit berbeda.
Untuk memeriksa versi dan varian perintah teratas Anda, gunakan opsi -v
$ top -v procps-ng version 3.3.9
Posting ini berfokus pada perintah teratas yang berasal dari proyek procps-ng. Ini adalah versi yang tersedia di sebagian besar distro modern seperti Ubuntu, Fedora, CentOS dll.
1. Menampilkan proses
Untuk melihat sekilas proses yang sedang berjalan, jalankan saja atas perintah apa adanya tanpa opsi seperti ini.
$ top
Dan segera hasilnya akan seperti ini -
top - 18:50:35 up 9:05, 5 users, load average: 0.68, 0.52, 0.39 Tasks: 254 total, 1 running, 252 sleeping, 0 stopped, 1 zombie %Cpu(s): 2.3 us, 0.5 sy, 0.0 ni, 97.1 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 6567896 used, 1597404 free, 219232 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 2445372 cached Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 17952 enlight+ 20 0 1062096 363340 88068 S 4.8 4.4 0:49.33 chrome 14294 enlight+ 20 0 954752 203548 61404 S 2.1 2.5 2:00.91 chrome 1364 root 20 0 519048 105704 65348 S 0.6 1.3 17:31.27 Xorg 19211 enlight+ 20 0 576608 47216 39136 S 0.6 0.6 0:01.01 konsole 13 root rt 0 0 0 0 S 0.3 0.0 0:00.10 watchdog/1 25 root 20 0 0 0 0 S 0.3 0.0 0:03.49 rcuos/2 1724 enlight+ 20 0 430144 36456 32608 S 0.3 0.4 0:03.60 akonadi_contact 1869 enlight+ 20 0 534708 52700 38132 S 0.3 0.6 0:53.94 yakuake 14040 enlight+ 20 0 858176 133944 61152 S 0.3 1.6 0:09.89 chrome
Layar berisi banyak informasi tentang sistem. Area header mencakup waktu aktif, rata-rata pemuatan, penggunaan cpu, data penggunaan memori.
Daftar proses menunjukkan semua proses dengan berbagai detail spesifik proses dalam kolom terpisah.
Beberapa nama kolom cukup jelas.
PID - ID Proses
USER - Akun pengguna sistem yang menjalankan proses.
%CPU - Penggunaan CPU berdasarkan proses.
%MEM - Penggunaan memori oleh proses
COMMAND - Perintah (file yang dapat dieksekusi) dari proses
2. Urutkan berdasarkan Memori/Cpu/ID Proses/Waktu Berjalan
Untuk menemukan proses yang paling banyak memakan cpu atau memori, cukup urutkan daftarnya.
Tekan tombol M ( ya, dalam huruf kapital, tidak kecil ) untuk mengurutkan daftar proses berdasarkan penggunaan memori. Proses yang menggunakan memori paling banyak ditampilkan terlebih dahulu dan beristirahat secara berurutan.
Berikut adalah opsi lain untuk mengurutkan berdasarkan penggunaan CPU, ID Proses, dan Waktu Berjalan -
Tekan 'P' - untuk mengurutkan daftar proses berdasarkan penggunaan cpu.
Tekan 'N' - untuk mengurutkan daftar menurut id proses
Tekan 'T' - untuk mengurutkan berdasarkan waktu berjalan.
3. Membalikkan urutan penyortiran - 'R'
Secara default, pengurutan dilakukan dalam urutan menurun. Menekan 'R' akan membalikkan urutan pengurutan kolom yang saat ini diurutkan
Berikut adalah output yang diurutkan dalam urutan penggunaan cpu. Proses yang menggunakan jumlah cpu paling sedikit akan ditampilkan terlebih dahulu.
top - 17:37:55 up 8:25, 3 users, load average: 0.74, 0.88, 0.74 Tasks: 245 total, 1 running, 243 sleeping, 0 stopped, 1 zombie %Cpu(s): 5.2 us, 1.7 sy, 0.0 ni, 93.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 6089388 used, 2075912 free, 199060 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 1952412 cached Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 185308 6020 4012 S 0.0 0.1 0:01.90 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.16 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+ 7 root 20 0 0 0 0 S 0.0 0.0 0:06.98 rcu_sched 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
4. Sorot kolom yang diurutkan dengan teks tebal - 'x'
Tekan x, untuk menyorot nilai dalam kolom sortir dengan teks tebal. Berikut adalah tangkapan layar, dengan kolom memori dalam teks tebal -
kolom sorot perintah atas
5. Sorot warna latar belakang kolom yang diurutkan 'b'
Setelah menyorot kolom yang diurutkan dengan font tebal, selanjutnya dimungkinkan untuk menyorot dengan warna latar belakang yang berbeda juga. Begini tampilannya
Latar belakang kolom sorot perintah teratas
6. Ubah penundaan pembaruan - 'd'
Perintah atas memperbarui informasi di layar setiap 3,0 detik secara default. Interval penyegaran ini dapat diubah.
Tekan tombol 'd', dan top akan meminta Anda untuk memasukkan interval waktu antara setiap penyegaran. Anda juga dapat memasukkan angka yang lebih kecil dari 1 detik, seperti 0,5. Masukkan interval yang diinginkan dan tekan Enter.
top - 18:48:23 up 9:19, 3 users, load average: 0.27, 0.46, 0.39 Tasks: 254 total, 1 running, 252 sleeping, 0 stopped, 1 zombie %Cpu(s): 1.3 us, 0.4 sy, 0.0 ni, 98.1 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 7899784 used, 265516 free, 238068 buffers KiB Swap: 1998844 total, 5432 used, 1993412 free. 3931316 cached Mem Change delay from 3.0 to PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 14512 enlight+ 20 0 1047688 302532 87156 S 1.3 3.7 1:34.87 /opt/googl+ 15312 enlight+ 20 0 25148 3280 2628 R 0.8 0.0 0:00.04 top
7. Filter atau proses Pencarian - 'o'/'O'
Anda dapat memfilter daftar proses berdasarkan berbagai kriteria seperti nama proses, penggunaan memori, penggunaan cpu, dll. Beberapa kriteria filter dapat diterapkan.
Tekan 'o' atau 'O' untuk mengaktifkan filter prompt. Ini akan menampilkan garis yang menunjukkan format filter seperti ini -
add filter #1 (ignoring case) as: [!]FLD?VAL
Kemudian masukkan filter seperti ini dan tekan Enter.
COMMAND=apache
Sekarang top hanya akan menampilkan proses-proses yang bidang COMMAND-nya berisi nilai apache.
Berikut adalah contoh filter lain yang menunjukkan proses yang menggunakan CPU secara aktif -
%CPU>0,0
Lihat filter aktif - Tekan Ctrl+o untuk melihat filter yang sedang aktif
Hapus filter - Tekan tombol '=' untuk menghapus semua filter aktif
8. Tampilkan jalur perintah lengkap dan argumen proses - 'c'
Tekan 'c' untuk menampilkan jalur perintah lengkap beserta argumen baris perintah di kolom COMMAND.
%CPU %MEM TIME+ COMMAND 0.0 0.0 0:00.00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-laun+ 0.0 0.1 0:01.52 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address+ 0.0 0.3 0:00.41 /usr/bin/kwalletd --pam-login 17 20 0.0 0.0 0:00.00 /usr/lib/x86_64-linux-gnu/libexec/kf5/start_kdeinit --kde+ 0.0 0.3 0:01.55 klauncher [kdeinit5] --fd=9 0.0 0.2 0:00.13 /usr/lib/telepathy/mission-control-5 0.0 0.1 0:00.00 /usr/lib/dconf/dconf-service 0.0 0.4 0:01.41 /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd 0.0 0.2 0:01.09 /usr/lib/x86_64-linux-gnu/libexec/kf5/kscreen_backend_lau+
9. Lihat proses pengguna - 'u'/'U'
Untuk melihat proses pengguna tertentu saja, tekan 'u' dan kemudian top akan meminta Anda untuk memasukkan nama pengguna.
Pengguna mana (kosong untuk semua)
Masukkan nama pengguna yang diinginkan dan tekan Enter.
top - 17:33:46 up 8:21, 3 users, load average: 2.55, 1.31, 0.81 Tasks: 246 total, 1 running, 244 sleeping, 0 stopped, 1 zombie %Cpu(s): 11.8 us, 3.3 sy, 0.6 ni, 84.2 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st KiB Mem: 8165300 total, 6108824 used, 2056476 free, 198680 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 1963436 cached Mem Which user (blank for all) enlightened PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1696 enlight+ 20 0 440728 37728 33724 S 0.0 0.5 0:03.12 akonadi_bi+ 1705 enlight+ 20 0 430304 37156 33264 S 0.0 0.5 0:03.08 akonadi_mi+ 1697 enlight+ 20 0 430144 37100 33248 S 0.0 0.5 0:03.00 akonadi_co+ 1599 enlight+ 20 0 504628 36132 32068 S 0.0 0.4 0:03.24 kdeconnectd 1608 enlight+ 20 0 570784 35688 29944 S 0.0 0.4 0:02.87 polkit-kde+ 1584 enlight+ 20 0 781016 33308 29056 S 0.0 0.4 0:04.03 kactivitym+
10. Alihkan tampilan proses idle - 'i'
Tekan 'i' untuk mengaktifkan tampilan proses idle/tidur. Secara default semua proses ditampilkan.
11. Sembunyikan/Tampilkan informasi di atas - 'l', 't', 'm'
Tombol 'l' akan menyembunyikan informasi rata-rata pemuatan.
Tombol 'm' akan menyembunyikan informasi memori.
Tombol 't' akan menyembunyikan informasi tugas dan cpu.
Menyembunyikan area informasi header, membuat lebih banyak proses terlihat dalam daftar.
12. Mode hutan - 'V'
Menekan 'V' akan menampilkan proses dalam hierarki anak induk. Itu terlihat seperti ini -
top - 09:29:34 up 17 min, 3 users, load average: 0.37, 0.58, 0.66 Tasks: 244 total, 1 running, 242 sleeping, 0 stopped, 1 zombie %Cpu(s): 6.1 us, 2.1 sy, 0.0 ni, 91.8 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 3968224 used, 4197076 free, 82868 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 1008416 cached Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 37844 5964 4012 S 0.0 0.1 0:01.08 systemd 279 root 20 0 35376 4132 3732 S 0.0 0.1 0:00.22 `- systemd-journal 293 root 20 0 44912 4388 3100 S 0.0 0.1 0:00.14 `- systemd-udevd 493 systemd+ 20 0 102360 2844 2572 S 0.0 0.0 0:00.01 `- systemd-timesyn 614 root 20 0 337360 8624 6904 S 0.0 0.1 0:00.03 `- ModemManager 615 avahi 20 0 40188 3464 3096 S 0.0 0.0 0:00.01 `- avahi-daemon 660 avahi 20 0 40068 324 12 S 0.0 0.0 0:00.00 `- avahi-daem+ 617 root 20 0 166276 8788 8076 S 0.0 0.1 0:00.07 `- thermald 621 root 20 0 15664 2496 2312 S 0.0 0.0 0:00.00 `- anacron 2792 root 20 0 4476 844 760 S 0.0 0.0 0:00.00 `- sh 2793 root 20 0 4364 684 604 S 0.0 0.0 0:00.00 `- run-pa+ 2802 root 20 0 4476 1672 1536 S 0.0 0.0 0:00.00 `- apt 2838 root 20 0 7228 676 596 S 0.0 0.0 0:00.00 `+ 630 root 20 0 28932 3128 2860 S 0.0 0.0 0:00.00 `- cron 634 root 20 0 283120 6776 5924 S 0.0 0.1 0:00.04 `- accounts-daemon 636 root 20 0 86160 7224 6128 S 0.0 0.1 0:00.01 `- cupsd
13. Ubah jumlah proses yang akan ditampilkan - 'n'
Katakanlah Anda ingin memantau hanya beberapa proses berdasarkan kriteria filter tertentu. Tekan 'n' dan masukkan jumlah proses yang ingin Anda tampilkan.
Ini akan menampilkan baris yang mengatakan -
Tugas maksimum =0, ubah menjadi (0 tidak terbatas)
14. Tampilkan semua inti CPU - '1'
Menekan '1' akan menampilkan informasi pemuatan tentang masing-masing inti cpu. Begini tampilannya -
top - 10:45:47 up 1:42, 5 users, load average: 0.81, 1.14, 0.94 Tasks: 260 total, 2 running, 257 sleeping, 0 stopped, 1 zombie %Cpu0 : 3.6 us, 3.6 sy, 0.0 ni, 92.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st %Cpu1 : 3.1 us, 3.6 sy, 0.0 ni, 93.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st %Cpu2 : 7.6 us, 1.8 sy, 0.0 ni, 90.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st %Cpu3 : 9.6 us, 2.6 sy, 0.0 ni, 87.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 7118864 used, 1046436 free, 204224 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 3410364 cached Mem
15. Tampilkan/Sembunyikan kolom 'f'
Secara default top hanya menampilkan beberapa kolom dari banyak kolom lainnya yang dapat ditampilkan. Jika Anda ingin menambah atau menghapus kolom tertentu atau mengubah urutan kolom, tekan f
Fields Management for window 1:Def, whose current sort field is %CPU Navigate with Up/Dn, Right selects for move then <Enter> or Left commits, 'd' or <Space> toggles display, 's' sets sort. Use 'q' or <Esc> to end! * PID = Process Id PGRP = Process Group vMj = Major Faults * USER = Effective Use TTY = Controlling T vMn = Minor Faults PR = Priority TPGID = Tty Process G USED = Res+Swap Size NI = Nice Value SID = Session Id nsIPC = IPC namespace VIRT = Virtual Image nTH = Number of Thr nsMNT = MNT namespace RES = Resident Size P = Last Used Cpu nsNET = NET namespace SHR = Shared Memory TIME = CPU Time nsPID = PID namespace S = Process Statu SWAP = Swapped Size nsUSER = USER namespac * %CPU = CPU Usage CODE = Code Size (Ki nsUTS = UTS namespace * %MEM = Memory Usage DATA = Data+Stack (K TIME+ = CPU Time, hun nMaj = Major Page Fa * COMMAND = Command Name/ nMin = Minor Page Fa PPID = Parent Proces nDRT = Dirty Pages C UID = Effective Use WCHAN = Sleeping in F RUID = Real User Id Flags = Task Flags <s RUSER = Real User Nam CGROUPS = Control Group SUID = Saved User Id SUPGIDS = Supp Groups I SUSER = Saved User Na SUPGRPS = Supp Groups N GID = Group Id TGID = Thread Group GROUP = Group Name ENVIRON = Environment v
Bidang yang ditandai * atau tebal adalah bidang yang ditampilkan, sesuai urutan kemunculannya dalam daftar ini.
Navigasikan daftar menggunakan tombol panah atas/bawah dan tekan 'd' untuk beralih tampilan bidang itu. Setelah selesai, tekan q untuk kembali ke daftar proses
Output berikut hanya menampilkan kolom PID, USER, CPU, MEMORY dan COMMAND.
top - 15:29:03 up 6:16, 4 users, load average: 0.99, 0.61, 0.63 Tasks: 247 total, 1 running, 245 sleeping, 0 stopped, 1 zombie %Cpu(s): 6.3 us, 2.0 sy, 0.2 ni, 91.5 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8165300 total, 6089244 used, 2076056 free, 189272 buffers KiB Swap: 1998844 total, 0 used, 1998844 free. 1902836 cached Mem PID USER %CPU %MEM COMMAND 1921 enlight+ 9.2 3.6 /opt/google/chrome/chrome 3078 enlight+ 6.9 4.2 /opt/google/chrome/chrome --type=renderer --lang=en-+ 1231 root 5.3 1.0 /usr/bin/X :0 -auth /var/run/sddm/:0 -nolisten tcp -+ 1605 enlight+ 2.8 2.5 /usr/bin/plasmashell --shut-up 1596 enlight+ 1.8 1.0 kwin_x11 -session 10d8d4e36b000144740943900000009530+ 2088 enlight+ 0.9 1.7 /opt/google/chrome/chrome --type=renderer --lang=en-+ 2534 enlight+ 0.8 1.7 /opt/google/chrome/chrome --type=renderer --lang=en-+ 5695 enlight+ 0.8 0.7 /usr/bin/python /usr/bin/terminator 1859 enlight+ 0.2 1.2 /usr/bin/perl /usr/bin/shutter --min_at_startup 2060 enlight+ 0.2 1.5 /opt/google/chrome/chrome --type=renderer --lang=en-+ 3541 enlight+ 0.2 3.6 /opt/google/chrome/chrome --type=renderer --lang=en-+
16. Modus kumpulan
Top juga mendukung output mode batch, di mana ia akan terus mencetak informasi secara berurutan, bukan satu layar. Ini berguna ketika Anda perlu mencatat keluaran teratas untuk analisis selanjutnya.
Berikut adalah contoh sederhana yang menunjukkan penggunaan CPU pada interval 1 detik.
$ top -d 1.0 -b | grep Cpu
17. Pisahkan keluaran dalam beberapa panel - 'A'
Setiap panel dapat diurutkan pada kolom yang berbeda. Tekan 'a' untuk bergerak melalui panel. Setiap panel dapat menampilkan kumpulan bidang yang berbeda dan kolom pengurutan yang berbeda.
perintah atas beberapa panel
Kesimpulan
Top adalah alat baris perintah yang bagus untuk memeriksa penggunaan sumber daya sistem dan detail proses. Ini sering digunakan di server untuk pemantauan dan diagnosis cepat.
Jika Anda mencari sesuatu yang lebih mudah dengan antarmuka pengguna yang lebih baik, cobalah htop. Htop memiliki antarmuka pengguna yang intuitif, di mana Anda tidak perlu mengingat pintasan keyboard. Htop memiliki petunjuk di layar yang memandu Anda tentang cara menggunakannya.