Saya telah mengumpulkan 25 alat pemantauan kinerja dan debugging yang akan membantu ketika Anda bekerja di lingkungan Linux. Daftar ini tidak lengkap atau otoritatif dengan cara apa pun.
Namun daftar ini memiliki alat yang cukup bagi Anda untuk bermain-main dan memilih salah satu yang sesuai dengan skenario debug dan pemantauan spesifik Anda.
1. SAR
Dengan menggunakan utilitas sar, Anda dapat melakukan dua hal:1) Memantau kinerja sistem waktu nyata (CPU, Memori, I/O, dll) 2) Mengumpulkan data kinerja di latar belakang secara terus-menerus dan melakukan analisis pada data historis untuk mengidentifikasi kemacetan.
Sar adalah bagian dari paket sysstat. Berikut ini adalah beberapa hal yang dapat Anda lakukan menggunakan utilitas sar.
- Penggunaan CPU kolektif
- Statistik CPU individu
- Memori yang digunakan dan tersedia
- Tukar ruang yang digunakan dan tersedia
- Keseluruhan aktivitas I/O sistem
- Aktivitas I/O perangkat individu
- Statistik peralihan konteks
- Jalankan antrian dan muat data rata-rata
- Statistik jaringan
- Laporkan data sar dari waktu tertentu
- dan banyak lagi..
Perintah sar berikut akan menampilkan statistik CPU sistem 3 kali (dengan interval 1 detik).
Perintah "sar -b" berikut melaporkan statistik I/O. “1 3” menunjukkan bahwa sar -b akan dieksekusi setiap 1 detik sebanyak 3 kali.
$ sar -b 1 3 Linux 2.6.18-194.el5PAE (dev-db) 03/26/2011 _i686_ (8 CPU) 01:56:28 PM tps rtps wtps bread/s bwrtn/s 01:56:29 PM 346.00 264.00 82.00 2208.00 768.00 01:56:30 PM 100.00 36.00 64.00 304.00 816.00 01:56:31 PM 282.83 32.32 250.51 258.59 2537.37 Average: 242.81 111.04 131.77 925.75 1369.90
Contoh SAR lainnya:Cara Memasang/Mengonfigurasi Sar (sysstat) dan 10 Contoh Perintah Sar yang Berguna
2. Tcpdump
tcpdump adalah penganalisis paket jaringan. Dengan menggunakan tcpdump, Anda dapat menangkap paket dan menganalisisnya untuk mengetahui hambatan kinerja apa pun.
Contoh perintah tcpdump berikut menampilkan paket yang diambil dalam ASCII.
$ tcpdump -A -i eth0 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes 14:34:50.913995 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 1457239478:1457239594(116) ack 1561461262 win 63652 E.....@.@..]..i...9...*.V...]...P....h....E...>{..U=...g. ......G..7\+KA....A...L. 14:34:51.423640 IP valh4.lell.net.ssh > yy.domain.innetbcp.net.11006: P 116:232(116) ack 1 win 63652 E.....@.@..\..i...9...*.V..*]...P....h....7......X..!....Im.S.g.u:*..O&....^#Ba... E..(R.@.|.....9...i.*...]...V..*P..OWp........
Menggunakan tcpdump Anda dapat menangkap paket berdasarkan beberapa kondisi khusus. Misalnya, tangkap paket yang mengalir melalui port tertentu, tangkap komunikasi tcp antara dua host tertentu, tangkap paket yang dimiliki oleh tipe protokol tertentu, dll.
Contoh tcpdump lainnya:15 Contoh Perintah TCPDUMP
3. Naga
Nagios adalah solusi pemantauan sumber terbuka yang dapat memantau hampir semua hal di infrastruktur TI Anda. Misalnya, ketika server mati, ia dapat mengirim pemberitahuan ke tim sysadmin Anda, ketika database mati, ia dapat membuka halaman tim DBA Anda, ketika server web mati, ia dapat memberi tahu tim yang sesuai.
Anda juga dapat mengatur tingkat peringatan dan ambang batas kritis untuk berbagai layanan untuk membantu Anda mengatasi masalah secara proaktif. Misalnya, ini dapat memberi tahu tim sysadmin ketika partisi disk menjadi 80% penuh, yang akan memberikan cukup waktu bagi tim sysadmin untuk bekerja menambahkan lebih banyak ruang sebelum masalah menjadi kritis.
Nagios juga memiliki antarmuka pengguna yang sangat baik dari mana Anda dapat memantau kesehatan infrastruktur TI Anda secara keseluruhan.
Berikut ini adalah beberapa hal yang dapat Anda pantau menggunakan Nagios:
- Perangkat keras apa pun (server, sakelar, router, dll)
- Server Linux dan server Windows
- Database (Oracle, MySQL, PostgreSQL, dll)
- Berbagai layanan yang berjalan di OS Anda (sendmail, nis, nfs, ldap, dll)
- Server web
- Aplikasi khusus Anda
- dst.
Contoh Nagios lainnya:Cara menginstal dan mengkonfigurasi Nagios, memantau mesin Windows jarak jauh, dan memantau server Linux jarak jauh.
4. Status
iostat melaporkan statistik CPU, I/O disk, dan NFS. Berikut ini adalah beberapa contoh perintah iostat.
Iostat tanpa argumen menampilkan informasi tentang penggunaan CPU, dan statistik I/O tentang semua partisi pada sistem seperti yang ditunjukkan di bawah ini.
$ iostat Linux 2.6.32-100.28.5.el6.x86_64 (dev-db) 07/09/2011 avg-cpu: %user %nice %system %iowait %steal %idle 5.68 0.00 0.52 2.03 0.00 91.76 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 194.72 1096.66 1598.70 2719068704 3963827344 sda1 178.20 773.45 1329.09 1917686794 3295354888 sda2 16.51 323.19 269.61 801326686 668472456 sdb 371.31 945.97 1073.33 2345452365 2661206408 sdb1 371.31 945.95 1073.33 2345396901 2661206408 sdc 408.03 207.05 972.42 513364213 2411023092 sdc1 408.03 207.03 972.42 513308749 2411023092
Secara default iostat menampilkan data I/O untuk semua disk yang tersedia di sistem. Untuk melihat statistik perangkat tertentu (Misalnya, /dev/sda), gunakan opsi -p seperti yang ditunjukkan di bawah ini.
$ iostat -p sda Linux 2.6.32-100.28.5.el6.x86_64 (dev-db) 07/09/2011 avg-cpu: %user %nice %system %iowait %steal %idle 5.68 0.00 0.52 2.03 0.00 91.76 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 194.69 1096.51 1598.48 2719069928 3963829584 sda2 336.38 27.17 54.00 67365064 133905080 sda1 821.89 0.69 243.53 1720833 603892838
5. Mpstat
mpstat melaporkan statistik prosesor. Berikut ini adalah beberapa contoh perintah mpstat.
Opsi -A, menampilkan semua informasi yang dapat ditampilkan oleh perintah mpstat seperti gambar di bawah ini. Ini benar-benar setara dengan perintah "mpstat -I ALL -u -P ALL".
$ mpstat -A Linux 2.6.32-100.28.5.el6.x86_64 (dev-db) 07/09/2011 _x86_64_ (4 CPU) 10:26:34 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 10:26:34 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.99 10:26:34 PM 0 0.01 0.00 0.01 0.01 0.00 0.00 0.00 0.00 99.98 10:26:34 PM 1 0.00 0.00 0.01 0.00 0.00 0.00 0.00 0.00 99.98 10:26:34 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 10:26:34 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 10:26:34 PM CPU intr/s 10:26:34 PM all 36.51 10:26:34 PM 0 0.00 10:26:34 PM 1 0.00 10:26:34 PM 2 0.04 10:26:34 PM 3 0.00 10:26:34 PM CPU 0/s 1/s 8/s 9/s 12/s 14/s 15/s 16/s 19/s 20/s 21/s 33/s NMI/s LOC/s SPU/s PMI/s PND/s RES/s CAL/s TLB/s TRM/s THR/s MCE/s MCP/s ERR/s MIS/s 10:26:34 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 7.47 0.00 0.00 0.00 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:26:34 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 4.90 0.00 0.00 0.00 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:26:34 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.04 0.00 0.00 0.00 0.00 0.00 3.32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 10:26:34 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.
mpstat Option -P ALL, menampilkan semua CPU (atau Core) individual beserta statistiknya seperti yang ditunjukkan di bawah ini.
$ mpstat -P ALL Linux 2.6.32-100.28.5.el6.x86_64 (dev-db) 07/09/2011 _x86_64_ (4 CPU) 10:28:04 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 10:28:04 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.99 10:28:04 PM 0 0.01 0.00 0.01 0.01 0.00 0.00 0.00 0.00 99.98 10:28:04 PM 1 0.00 0.00 0.01 0.00 0.00 0.00 0.00 0.00 99.98 10:28:04 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 10:28:04 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
6. Vmstat
vmstat melaporkan statistik memori virtual. Berikut ini adalah beberapa contoh perintah vmstat.
vmstat secara default akan menampilkan penggunaan memori (termasuk swap) seperti yang ditunjukkan di bawah ini.
$ vmstat procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 305416 260688 29160 2356920 2 2 4 1 0 0 6 1 92 2 0 To execute vmstat every 2 seconds for 10 times, do the following. After executing 10 times, it will stop automatically. $ vmstat 2 10 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 537144 182736 6789320 0 0 0 0 1 1 0 0 100 0 0 0 0 0 537004 182736 6789320 0 0 0 0 50 32 0 0 100 0 0 ..
iostat dan vmstat adalah bagian dari utilitas sar. Anda harus menginstal paket sysstat agar iostat dan vmstat berfungsi.
Contoh lainnya:24 perintah iostat, vmstat dan mpstat Contoh
7. Perintah PS
Proses adalah contoh program yang sedang berjalan. Linux adalah sistem operasi multitasking, yang berarti bahwa lebih dari satu proses dapat aktif sekaligus. Gunakan perintah ps untuk mengetahui proses apa yang sedang berjalan di sistem Anda.
Perintah ps juga memberi Anda banyak informasi tambahan tentang proses yang sedang berjalan yang akan membantu Anda mengidentifikasi hambatan kinerja pada sistem Anda.
Berikut ini adalah beberapa contoh perintah ps.
Gunakan opsi -u untuk menampilkan proses yang dimiliki oleh nama pengguna tertentu. Jika Anda memiliki beberapa nama pengguna, pisahkan menggunakan koma. Contoh di bawah ini menampilkan semua proses yang dimiliki oleh pengguna wwwrun, atau postfix.
$ ps -f -u wwwrun,postfix UID PID PPID C STIME TTY TIME CMD postfix 7457 7435 0 Mar09 ? 00:00:00 qmgr -l -t fifo -u wwwrun 7495 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 7496 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 7497 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 7498 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 7499 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 10078 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 10082 7491 0 Mar09 ? 00:00:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf postfix 15677 7435 0 22:23 ? 00:00:00 pickup -l -t fifo -u
Contoh di bawah ini menampilkan Id proses dan perintah dalam hierarki. –forest adalah argumen untuk perintah ps yang menampilkan seni ASCII dari pohon proses. Dari pohon ini, kita dapat mengidentifikasi mana proses induk dan proses turunannya yang bercabang secara rekursif.
$ ps -e -o pid,args --forest 468 \_ sshd: root@pts/7 514 | \_ -bash 17484 \_ sshd: root@pts/11 17513 | \_ -bash 24004 | \_ vi ./790310__11117/journal 15513 \_ sshd: root@pts/1 15522 | \_ -bash 4280 \_ sshd: root@pts/5 4302 | \_ -bash
Contoh ps lainnya:7 Contoh Perintah PS Praktis untuk Pemantauan Proses
8. Gratis
Perintah gratis menampilkan informasi tentang fisik (RAM) dan memori swap sistem Anda.
Pada contoh di bawah ini, total memori fisik pada sistem ini adalah 1GB. Nilai yang ditampilkan di bawah ini dalam KB.
# free total used free shared buffers cached Mem: 1034624 1006696 27928 0 174136 615892 -/+ buffers/cache: 216668 817956 Swap: 2031608 0 2031608
Contoh berikut akan menampilkan total memori pada sistem Anda termasuk RAM dan Swap.
Pada perintah berikut:
- opsi m menampilkan nilai dalam MB
- opsi t menampilkan baris “Total”, yang merupakan jumlah dari nilai fisik dan memori swap
- opsi o adalah menyembunyikan baris buffer/cache dari contoh di atas.
# free -mto total used free shared buffers cached Mem: 1010 983 27 0 170 601 Swap: 1983 0 1983 Total: 2994 983 2011
9. ATAS
Perintah atas menampilkan semua proses yang berjalan dalam sistem yang diurutkan berdasarkan kolom tertentu. Ini menampilkan informasi secara real-time.
Anda dapat mematikan proses tanpa keluar dari atas. Setelah Anda menemukan proses yang perlu dimatikan, tekan "k" yang akan meminta id proses, dan sinyal untuk dikirim. Jika Anda memiliki hak istimewa untuk membunuh PID tersebut, PID tersebut akan berhasil dibunuh.
PID to kill: 1309 Kill PID 1309 with signal [15]: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent 5136 root 16 0 38040 14m 9836 S 0 0.2 0:00.39 nautilus
Gunakan top -u untuk menampilkan proses pengguna tertentu hanya di output perintah teratas.
$ top -u geek
Saat perintah unix top sedang berjalan, tekan u yang akan menanyakan nama pengguna seperti yang ditunjukkan di bawah ini.
Which user (blank for all): geek PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1309 geek 23 0 2483m 1.7g 27m S 0 21.8 45:31.32 gagent 1882 geek 25 0 2485m 1.7g 26m S 0 21.7 22:38.97 gagent
Contoh teratas lainnya:15 Contoh Perintah Teratas Linux Praktis
10. Pmap
perintah pmap menampilkan peta memori dari proses yang diberikan. Anda harus meneruskan pid sebagai argumen ke perintah pmap.
Contoh berikut menampilkan peta memori shell bash saat ini. Dalam contoh ini, 5732 adalah PID dari bash shell.
$ pmap 5732 5732: -bash 00393000 104K r-x-- /lib/ld-2.5.so 003b1000 1272K r-x-- /lib/libc-2.5.so 00520000 8K r-x-- /lib/libdl-2.5.so 0053f000 12K r-x-- /lib/libtermcap.so.2.0.8 0084d000 76K r-x-- /lib/libnsl-2.5.so 00c57000 32K r-x-- /lib/libnss_nis-2.5.so 00c8d000 36K r-x-- /lib/libnss_files-2.5.so b7d6c000 2048K r---- /usr/lib/locale/locale-archive bfd10000 84K rw--- [ stack ] total 4796K
pmap -x memberikan beberapa informasi tambahan tentang peta memori.
$ pmap -x 5732 5732: -bash Address Kbytes RSS Anon Locked Mode Mapping 00393000 104 - - - r-x-- ld-2.5.so 003b1000 1272 - - - r-x-- libc-2.5.so 00520000 8 - - - r-x-- libdl-2.5.so 0053f000 12 - - - r-x-- libtermcap.so.2.0.8 0084d000 76 - - - r-x-- libnsl-2.5.so 00c57000 32 - - - r-x-- libnss_nis-2.5.so 00c8d000 36 - - - r-x-- libnss_files-2.5.so b7d6c000 2048 - - - r---- locale-archive bfd10000 84 - - - rw--- [ stack ] -------- ------- ------- ------- ------- total kB 4796 - - -
Untuk menampilkan informasi perangkat dari peta proses, gunakan 'pamp -d pid'.
11. Netstat
Perintah Netstat menampilkan berbagai informasi terkait jaringan seperti koneksi jaringan, tabel perutean, statistik antarmuka, koneksi penyamaran, keanggotaan multicast, dll.,
Berikut ini adalah beberapa contoh perintah netstat.
Daftar semua port (baik mendengarkan dan tidak mendengarkan) menggunakan netstat -a seperti yang ditunjukkan di bawah ini.
# netstat -a | more Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:30037 *:* LISTEN udp 0 0 *:bootpc *:* Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 6135 /tmp/.X11-unix/X0 unix 2 [ ACC ] STREAM LISTENING 5140 /var/run/acpid.socket
Gunakan perintah netstat berikut untuk mencari tahu di port mana program sedang berjalan.
# netstat -ap | grep ssh (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 1 0 dev-db:ssh 101.174.100.22:39213 CLOSE_WAIT - tcp 1 0 dev-db:ssh 101.174.100.22:57643 CLOSE_WAIT -
Gunakan perintah netstat berikut untuk mengetahui proses mana yang menggunakan port tertentu.
# netstat -an | grep ':80'
Contoh netstat lainnya:10 Contoh Perintah Netstat
12. IPTraf
IPTraf adalah Perangkat Lunak Pemantauan Jaringan IP. Berikut ini adalah beberapa fitur utama dari IPTraf:
- Ini adalah utilitas berbasis konsol (berbasis teks).
- Ini menampilkan lalu lintas IP yang melintasi jaringan Anda. Ini menampilkan flag TCP, jumlah paket dan byte, ICMP, jenis paket OSPF, dll.
- Menampilkan statistik antarmuka yang diperluas (termasuk IP, TCP, UDP, ICMP, ukuran dan jumlah paket, kesalahan checksum, dll.)
- Modul LAN menemukan host secara otomatis dan menampilkan aktivitasnya
- Filter tampilan protokol untuk melihat lalu lintas protokol selektif
- Fitur Pencatatan Lanjutan
- Selain antarmuka ethernet, ia juga mendukung FDDI, ISDN, SLIP, PPP, dan loopback
- Anda juga dapat menjalankan utilitas dalam mode layar penuh. Ini juga memiliki menu berbasis teks.
Info lebih lanjut: Halaman Beranda IPTraf. Tangkapan layar IPTraf.
13. Jejak
Strace digunakan untuk debugging dan troubleshooting eksekusi dari sebuah executable di lingkungan Linux. Ini menampilkan panggilan sistem yang digunakan oleh proses, dan sinyal yang diterima oleh proses.
Strace memonitor panggilan sistem dan sinyal dari program tertentu. Akan sangat membantu bila Anda tidak memiliki kode sumber dan ingin men-debug eksekusi suatu program. strace memberi Anda urutan eksekusi biner dari awal hingga akhir.
Lacak Panggilan Sistem Tertentu dalam Opsi Penggunaan yang Dapat Dieksekusi -e
Secara default, strace menampilkan semua panggilan sistem untuk executable yang diberikan. Contoh berikut menunjukkan output dari strace untuk perintah ls Linux.
$ strace ls execve("/bin/ls", ["ls"], [/* 21 vars */]) = 0 brk(0) = 0x8c31000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap2(NULL, 8192, PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb78c7000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=65354, ...}) = 0
Untuk hanya menampilkan panggilan sistem tertentu, gunakan opsi strace -e seperti yang ditunjukkan di bawah ini.
$ strace -e open ls open("/etc/ld.so.cache", O_RDONLY) = 3 open("/lib/libselinux.so.1", O_RDONLY) = 3 open("/lib/librt.so.1", O_RDONLY) = 3 open("/lib/libacl.so.1", O_RDONLY) = 3 open("/lib/libc.so.6", O_RDONLY) = 3 open("/lib/libdl.so.2", O_RDONLY) = 3 open("/lib/libpthread.so.0", O_RDONLY) = 3 open("/lib/libattr.so.1", O_RDONLY) = 3 open("/proc/filesystems", O_RDONLY|O_LARGEFILE) = 3 open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3 open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
Contoh strace lainnya:7 Contoh Strace untuk Debug Eksekusi Program di Linux
14. Lsof
Lsof adalah singkatan dari ls open files, yang akan mencantumkan semua file yang terbuka di sistem. File yang terbuka termasuk koneksi jaringan, perangkat, dan direktori. Output dari perintah lsof akan memiliki kolom berikut:
- Nama proses COMMAND.
- ID proses PID
- Nama Pengguna PENGGUNA
- Deskriptor file FD
- JENIS jenis simpul file
- Nomor perangkat PERANGKAT
- UKURAN ukuran file
- Nomor simpul NODE
- NAME jalur lengkap nama file.
Untuk melihat semua file sistem yang terbuka, jalankan perintah lsof tanpa parameter apa pun seperti yang ditunjukkan di bawah ini.
# lsof | more COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME init 1 root cwd DIR 8,1 4096 2 / init 1 root rtd DIR 8,1 4096 2 / init 1 root txt REG 8,1 32684 983101 /sbin/init init 1 root mem REG 8,1 106397 166798 /lib/ld-2.3.4.so init 1 root mem REG 8,1 1454802 166799 /lib/tls/libc-2.3.4.so init 1 root mem REG 8,1 53736 163964 /lib/libsepol.so.1 init 1 root mem REG 8,1 56328 166811 /lib/libselinux.so.1 init 1 root 10u FIFO 0,13 972 /dev/initctl migration 2 root cwd DIR 8,1 4096 2 / skipped..
Untuk melihat file yang dibuka oleh pengguna tertentu, gunakan opsi lsof -u untuk menampilkan semua file yang dibuka oleh pengguna tertentu.
# lsof -u ramesh vi 7190 ramesh txt REG 8,1 474608 475196 /bin/vi sshd 7163 ramesh 3u IPv6 15088263 TCP dev-db:ssh->abc-12-12-12-12.
Untuk membuat daftar pengguna file tertentu, gunakan lsof seperti yang ditunjukkan di bawah ini. Dalam contoh ini, ini menampilkan semua pengguna yang sedang menggunakan vi.
# lsof /bin/vi COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME vi 7258 root txt REG 8,1 474608 475196 /bin/vi vi 7300 ramesh txt REG 8,1 474608 475196 /bin/vi
15. Tidak
Ntop sama seperti top, tetapi untuk lalu lintas jaringan. ntop adalah monitor lalu lintas jaringan yang menampilkan penggunaan jaringan.
Anda juga dapat mengakses ntop dari browser untuk mendapatkan informasi lalu lintas dan status jaringan.
Berikut ini adalah beberapa fitur utama ntop:
- Tampilkan lalu lintas jaringan yang dikelompokkan berdasarkan protokol
- Urutkan keluaran lalu lintas jaringan berdasarkan beberapa kriteria
- Menampilkan statistik lalu lintas jaringan
- Kemampuan untuk menyimpan statistik lalu lintas jaringan menggunakan RRD
- Identifikasi identitas pengguna, dan host os
- Kemampuan untuk menganalisis dan menampilkan lalu lintas TI
- Kemampuan untuk bekerja sebagai kolektor NetFlow/sFlow untuk router dan switch
- Menampilkan statistik lalu lintas jaringan yang mirip dengan RMON
- Berfungsi di Linux, MacOS, dan Windows
Info lebih lanjut:Halaman beranda Ntop
16. GkrellM
GKrellM adalah singkatan dari GNU Krell Monitors, atau GTK Krell Meter. Ini adalah program pemantauan berbasis toolkit GTK+, yang memantau berbagai sumber daya sistem. UI stabil. yaitu Anda dapat menambahkan sebanyak mungkin objek pemantauan yang Anda inginkan satu di atas yang lain. Sama seperti alat pemantauan berbasis UI desktop lainnya, alat ini dapat memantau CPU, memori, sistem file, penggunaan jaringan, dll. Namun menggunakan plugin, Anda dapat memantau aplikasi eksternal.
Info lebih lanjut:Halaman beranda GkrellM
17. w dan waktu aktif
Saat memantau kinerja sistem, perintah w akan membantu mengetahui siapa yang masuk ke sistem.
$ w 09:35:06 up 21 days, 23:28, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 :0 24Oct11 21days 1:05 1:05 /usr/bin/Xorg :0 -nr -verbose ramesh pts/0 192.168.1.10 Mon14 0.00s 15.55s 0.26s sshd: localuser [priv] john pts/0 192.168.1.11 Mon07 0.00s 19.05s 0.20s sshd: localuser [priv] jason pts/0 192.168.1.12 Mon07 0.00s 21.15s 0.16s sshd: localuser [priv]
Untuk setiap pengguna yang masuk, ini akan menampilkan info berikut:
- Nama pengguna
- info tty
- Alamat ip host jarak jauh
- Waktu login pengguna
- Berapa lama pengguna menganggur
- JCPU dan PCUP
- Perintah dari proses yang sedang dijalankan pengguna
Baris 1 dari output perintah w mirip dengan output perintah uptime. Ini menampilkan yang berikut:
- Waktu saat ini
- Berapa lama sistem telah aktif dan berjalan
- Jumlah total pengguna yang saat ini masuk ke sistem
- Muat rata-rata untuk 1, 5, dan 15 menit terakhir
Jika Anda hanya menginginkan informasi waktu aktif, gunakan perintah waktu aktif.
$ uptime 09:35:02 up 106 days, 28 min, 2 users, load average: 0.08, 0.11, 0.05
Harap dicatat bahwa perintah w dan uptime mendapatkan informasi dari file data /var/run/utmp.
18. /proc
/proc adalah sistem file virtual. Misalnya, jika Anda melakukan ls -l /proc/stat, Anda akan melihat bahwa ia memiliki ukuran 0 byte, tetapi jika Anda melakukan "cat /proc/stat", Anda akan melihat beberapa konten di dalam file.
Lakukan ls -l /proc, dan Anda akan melihat banyak direktori hanya dengan angka. Angka-angka ini mewakili id proses, file di dalam direktori bernomor ini sesuai dengan proses dengan PID tertentu.
Berikut ini adalah file-file penting yang terletak di bawah setiap direktori bernomor (untuk setiap proses):
- cmdline – baris perintah dari perintah.
- lingkungan – variabel lingkungan.
- fd – Berisi deskriptor file yang ditautkan ke file yang sesuai.
- batas – Berisi informasi tentang batas khusus untuk proses.
- mount – memasang informasi terkait
Berikut ini adalah tautan penting di bawah setiap direktori bernomor (untuk setiap proses):
- cwd – Tautan ke direktori kerja proses saat ini.
- exe – Tautan ke proses yang dapat dieksekusi.
- root – Menautkan ke direktori root dari proses.
Contoh /proc lainnya:Jelajahi Sistem File /proc Linux
19. Penjaga Sistem KDE
Ini juga disebut sebagai KSysGuard. Pada desktop Linux yang menjalankan KDE, Anda dapat menggunakan alat ini untuk memantau sumber daya sistem. Selain memantau sistem lokal, ini juga dapat memantau sistem jarak jauh.
Jika Anda menjalankan desktop KDE, buka Applications -> System -> System Monitor, yang akan meluncurkan KSysGuard. Anda juga dapat mengetik ksysguard dari baris perintah untuk meluncurkannya.
Alat ini menampilkan dua tab berikut:
- Tabel Proses – Menampilkan semua proses yang aktif. Anda dapat mengurutkan, mematikan, atau mengubah prioritas proses dari sini
- Pemuatan Sistem – Menampilkan grafik untuk penggunaan CPU, Memori, dan Jaringan. Grafik ini dapat disesuaikan dengan mengklik kanan pada salah satu grafik ini.
Untuk menghubungkan ke host jarak jauh dan memantaunya, klik menu File -> Monitor Remote Machine -> tentukan alamat ip host, metode koneksi (misalnya, ssh). Ini akan menanyakan nama pengguna/kata sandi Anda pada mesin jarak jauh. Setelah terhubung, ini akan menampilkan penggunaan sistem dari mesin jarak jauh di tab Tabel Proses dan Beban Sistem.
20. Monitor Sistem GNOME
Pada desktop Linux yang menjalankan GNOME, Anda dapat menggunakan alat ini untuk memantau proses, sumber daya sistem, dan sistem file dari antarmuka grafis. Selain memantau, Anda juga dapat menggunakan alat UI ini untuk mematikan proses, mengubah prioritas proses.
Jika Anda menjalankan desktop GNOME, buka Sistem -> Administrasi -> Monitor Sistem, yang akan meluncurkan Monitor Sistem GNOME. Anda juga dapat mengetik gnome-system-monitor dari baris perintah untuk meluncurkannya.
Alat ini memiliki empat tab berikut:
- Sistem – Menampilkan informasi sistem termasuk versi distribusi Linux, sumber daya sistem, dan informasi perangkat keras.
- Proses – Menampilkan semua proses aktif yang dapat diurutkan berdasarkan berbagai bidang
- Sumber Daya – Menampilkan penggunaan CPU, memori, dan jaringan
- Sistem File – Menampilkan informasi tentang sistem file yang saat ini dipasang
Info lebih lanjut:Halaman beranda Monitor Sistem GNOME
21. Conky
Conky adalah monitor sistem atau X. Conky menampilkan informasi di UI menggunakan apa yang disebut objek. Secara default ada lebih dari 250 objek yang dibundel dengan conky, yang menampilkan berbagai informasi pemantauan (CPU, memori, jaringan, disk, dll.). Mendukung IMAP, POP3, beberapa pemutar audio.
Anda dapat memantau dan menampilkan aplikasi eksternal apa pun dengan membuat objek Anda sendiri menggunakan skrip. Informasi pemantauan dapat ditampilkan dalam berbagai format:Teks, grafik, bilah kemajuan, dll. Utilitas ini sangat dapat dikonfigurasi.
Info lebih lanjut:Tangkapan layar Conky
22. Kaktus
Cacti adalah antarmuka UI berbasis PHP untuk RRDTool. Cacti menyimpan data yang diperlukan untuk menghasilkan grafik dalam database MySQL.
Berikut ini adalah beberapa fitur Cacti tingkat tinggi:
- Kemampuan untuk melakukan pengumpulan data dan menyimpannya di database MySQL (atau arsip round robin)
- Beberapa fitur grafik lanjutan tersedia (pengelompokan item grafik GPRINT, pengisian otomatis untuk grafik, manipulasi data grafik menggunakan fungsi matematika CDEF, semua item grafik RRDTool didukung)
- Sumber data dapat mengumpulkan data lokal atau jarak jauh untuk grafik
- Kemampuan untuk menyesuaikan sepenuhnya pengaturan Arsip Round robin (RRA)
- Pengguna dapat menentukan skrip khusus untuk mengumpulkan data
- Dukungan SNMP (php-snmp, ucd-snmp, atau net-snmp) untuk pengumpulan data
- Built-in poller membantu menjalankan skrip khusus, mendapatkan data SNMP, memperbarui file RRD, dll.
- Fitur template grafik yang sangat fleksibel
- Opsi tampilan grafik yang mudah digunakan dan dapat disesuaikan
- Buat pengguna yang berbeda dengan berbagai set izin untuk mengakses frontend kaktus
- Tingkat izin terperinci dapat disetel untuk pengguna individu
- dan banyak lagi..
Info lebih lanjut:halaman rumah Kaktus
23. Vnstat
vnstat adalah utilitas baris perintah yang menampilkan dan mencatat lalu lintas jaringan dari antarmuka pada sistem Anda. Ini tergantung pada statistik jaringan yang disediakan oleh kernel. Jadi, vnstat tidak menambahkan beban tambahan apa pun ke sistem Anda untuk memantau dan mencatat lalu lintas jaringan.
vnstat tanpa argumen apa pun akan memberi Anda ringkasan singkat dengan info berikut:
- Terakhir kali basis data vnStat yang terletak di bawah /var/lib/vnstat/ diperbarui
- Sejak mulai mengumpulkan statistik untuk antarmuka tertentu
- Data statistik jaringan (byte yang ditransmisikan, byte yang diterima) selama dua bulan terakhir, dan dua hari terakhir.
# vnstat Database updated: Sat Oct 15 11:54:00 2011 eth0 since 10/01/11 rx: 12.89 MiB tx: 6.94 MiB total: 19.82 MiB monthly rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- Sep '11 12.90 MiB | 6.90 MiB | 19.81 MiB | 0.14 kbit/s Oct '11 12.89 MiB | 6.94 MiB | 19.82 MiB | 0.15 kbit/s ------------------------+-------------+-------------+--------------- estimated 29 MiB | 14 MiB | 43 MiB | daily rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- yesterday 4.30 MiB | 2.42 MiB | 6.72 MiB | 0.64 kbit/s today 2.03 MiB | 1.07 MiB | 3.10 MiB | 0.59 kbit/s ------------------------+-------------+-------------+--------------- estimated 4 MiB | 2 MiB | 6 MiB |
Gunakan “vnstat -t” atau “vnstat –top10” untuk menampilkan 10 hari lalu lintas teratas sepanjang waktu.
$ vnstat --top10 eth0 / top 10 # day rx | tx | total | avg. rate -----------------------------+-------------+-------------+--------------- 1 10/12/11 4.30 MiB | 2.42 MiB | 6.72 MiB | 0.64 kbit/s 2 10/11/11 4.07 MiB | 2.17 MiB | 6.24 MiB | 0.59 kbit/s 3 10/10/11 2.48 MiB | 1.28 MiB | 3.76 MiB | 0.36 kbit/s .... -----------------------------+-------------+-------------+---------------
Contoh vnstat lainnya:Cara Memantau dan Mencatat Lalu Lintas Jaringan menggunakan VNStat
24. Htop
htop adalah penampil proses berbasis ncurses. Ini mirip dengan top, tetapi lebih fleksibel dan ramah pengguna. Anda dapat berinteraksi dengan htop menggunakan mouse. Anda dapat menggulir secara vertikal untuk melihat daftar proses lengkap, dan menggulir secara horizontal untuk melihat baris perintah lengkap dari proses tersebut.
htop output terdiri dari tiga bagian 1) header 2) body dan 3) footer.
Tajuk menampilkan tiga bar berikut, dan beberapa informasi sistem penting. Anda dapat mengubahnya dari menu pengaturan htop.
- Penggunaan CPU:Menampilkan % yang digunakan dalam teks di akhir bilah. Bilah itu sendiri akan menunjukkan warna yang berbeda. Prioritas rendah dalam warna biru, normal dalam warna hijau, kernel berwarna merah.
- Penggunaan Memori
- Tukar Penggunaan
Tubuh menampilkan daftar proses yang diurutkan berdasarkan penggunaan %CPU. Gunakan tombol panah, halaman ke atas, tombol halaman ke bawah untuk melihat proses.
Jarak Kaki menampilkan perintah menu htop.
Info lebih lanjut:Tangkapan Layar HTOP dan Contohnya
25. Statistik Soket – SS
ss adalah singkatan dari statistik soket. Ini menampilkan informasi yang mirip dengan perintah netstat.
Untuk menampilkan semua soket pendengar, lakukan ss -l seperti yang ditunjukkan di bawah ini.
$ ss -l Recv-Q Send-Q Local Address:Port Peer Address:Port 0 100 :::8009 :::* 0 128 :::sunrpc :::* 0 100 :::webcache :::* 0 128 :::ssh :::* 0 64 :::nrpe :::*
Berikut ini hanya menampilkan koneksi yang telah dibuat.
$ ss -o state established Recv-Q Send-Q Local Address:Port Peer Address:Port 0 52 192.168.1.10:ssh 192.168.2.11:55969 timer:(on,414ms,0)
Berikut ini menampilkan statistik ringkasan soket. Ini menampilkan jumlah total soket yang dipecah berdasarkan jenisnya.
$ ss -s Total: 688 (kernel 721) TCP: 16 (estab 1, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 11 Transport Total IP IPv6 * 721 - - RAW 0 0 0 UDP 13 10 3 TCP 16 7 9 INET 29 17 12 FRAG 0 0 0
Alat apa yang Anda gunakan untuk memantau kinerja di lingkungan Linux Anda? Apakah saya melewatkan salah satu alat pemantau kinerja favorit Anda? Tinggalkan komentar.