Untuk tren I/O disk, ada beberapa opsi. Favorit pribadi saya adalah sar
perintah dari sysstat
. Secara default, ini memberikan keluaran seperti ini:
09:25:01 AM CPU %user %nice %system %iowait %steal %idle
09:35:01 AM all 0.11 0.00 0.01 0.00 0.00 99.88
09:45:01 AM all 0.12 0.00 0.01 0.00 0.00 99.86
09:55:01 AM all 0.09 0.00 0.01 0.00 0.00 99.90
10:05:01 AM all 0.10 0.00 0.01 0.02 0.01 99.86
Average: all 0.19 0.00 0.02 0.00 0.01 99.78
%iowait
adalah waktu yang dihabiskan untuk menunggu I/O. Dengan menggunakan paket Debian, Anda harus mengaktifkan kolektor stat melalui /etc/default/sysstat
config setelah instalasi paket.
Untuk melihat penggunaan saat ini yang dikelompokkan berdasarkan perangkat, Anda dapat menggunakan iostat
perintah, juga dari paket sysstat:
$ iostat -x 1
Linux 3.5.2-x86_64-linode26 (linode) 11/08/2012 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.84 0.00 0.08 1.22 0.07 97.80
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
xvda 0.09 1.02 2.58 0.49 112.79 12.11 40.74 0.15 48.56 3.88 1.19
xvdb 1.39 0.43 4.03 1.82 43.33 18.43 10.56 0.66 112.73 1.93 1.13
Beberapa opsi lain yang dapat menampilkan penggunaan disk dalam grafik yang sedang tren adalah munin dan kaktus.
Lihat iotop
:
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % init splash
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
4 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/0:0H]
6 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [mm_percpu_wq]
7 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
8 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_sched]
Atau iodump
, jika itu lebih sesuai dengan cara berpikir Anda.
Catatan:Ini membutuhkan setidaknya kernel 2.6.20 untuk berfungsi.
Saya suka dstat
. Itu dapat menampilkan total dan statistik per disk dan bahkan perangkat md (RAID), juga dapat menggunakan warna untuk ikhtisar yang lebih baik:
$ dstat -tdD total,sda,sdb,sdc,md1 60
----system---- -dsk/total----dsk/sda-----dsk/sdb-----dsk/sdc-----dsk/md1--
time | read writ: read writ: read writ: read writ: read writ
08-11 22:08:17|3549k 277k: 144k 28k: 851k 62k: 852k 60k: 25k 82k
08-11 22:09:17| 60k 258k:1775B 15k: 13k 63k: 15k 60k: 68B 74k
08-11 22:10:17| 176k 499k: 0 14k: 41k 122k: 41k 125k: 273B 157k
08-11 22:11:17| 42k 230k: 0 14k:9830B 54k: 14k 51k: 0 70k
08-11 22:11:52| 28k 132k: 0 5032B:5266B 33k:9479B 28k: 0 37k
-t
untuk cap waktu-d
untuk statistik disk-D
untuk menentukan perangkat yang tepat untuk dilaporkan-
60
rata-rata lebih dari 60 detik. Tampilan diperbarui setiap detik, tetapi hanya sekali per 60 detik baris baru akan dimulai. -
tidak digunakan dalam contoh ini, melainkan
-c
dapat melaporkan persentase IO tunggu, yang biasanya terkait dengan CPU yang menunggu data dari disk.
Ini tersedia untuk sebagian besar distribusi Linux, tetapi terkadang perlu diinstal dari repositori.