iostat(1M)
NAME
iostat − report I/O statistics
SYNOPSIS
/usr/bin/iostat [ −cdDeEIMnpPtx ] [ −l n ] [ disk ... ] [ interval [ count ] ]
DESCRIPTION
The iostat utility iteratively reports terminal, disk, and tape I/O activity, as well as CPU utilization. The first line of output is for all time since boot; each subsequent line is for the prior interval only.
To compute this information, the kernel maintains a number of counters. For each disk, the kernel counts reads, writes, bytes read, and bytes written. The kernel also takes hi-res time stamps at queue entry and exit points, which allows it to keep track of the residence time and cumulative residence-length product for each queue. Using these values, iostat produces highly accurate measures of throughput, utilization, queue lengths, transaction rates and service time. For terminals collectively, the kernel simply counts the number of input and output characters.
For more general system statistics, use sar(1), sar(1M), or vmstat(1M).
See Solaris 1.x to 2.x Transition Guide for device naming conventions for disks.
OPTIONS
The iostat utility’s activity class options default to tdc (terminal, disk, and CPU). If any activity class options are specified, the default is completely overridden. Therefore, if only −d is specified, neither terminal nor CPU statistics will be reported. The last disk option specified (−d, −D, or −x) is the only one that is used.
−c Report the percentage of time the system has spent in user mode, in system mode, waiting for I/O, and idling.
−d For each disk, report the number of kilobytes transferred per second, the number of transfers per second, and the average service time in milliseconds.
−D For each disk, report the reads per second, writes per second, and percentage disk utilization.
−e Display device error summary statistics. The total errors, hard errors, soft errors and transport errors are displayed.
−E Display all device error statistics.
−I Report the counts in each interval, rather than rates (where applicable).
−l n Limit the number of disks included in the report to n; the disk limit defaults to 4 for −d and −D, and unlimited for −x. Note: disks explicitly requested (see disk below) are not subject to this disk limit.
−M Display data throughput in MB/sec instead of KB/sec.
−n Display names in descriptive format (for example, cXtYdZ, rmt/N, server:/export/path).
−p For each disk, report per-partition statistics in addition to per-device statistics.
−P For each disk, report per-partition statistics only, no per-device statistics.
−t Report the number of characters read and written to terminals per second.
−x For each disk, report extended disk statistics. The output is in tabular form.
OPERANDS
The following operands are supported:
disk Explicitly specify the disks to be reported; in addition to any explicit disks, any active disks up to the disk limit (see −l above) will also be reported.
count Only print count reports.
interval Report once each interval seconds.
EXAMPLES
example% iostat -xtc 5 2
| extended disk statistics | tty | cpu | |||||||||||||
| disk | r/s | w/s | Kr/s | Kw/s | wait | actv | svc_t | %w | %b | tin | tout | us | sy | wt | id |
| sd0 | 6.2 | 0.0 | 21.5 | 0.0 | 0.0 | 0.1 | 24.1 | 0 | 15 | 0 | 84 | 4 | 94 | 2 | 0 |
| sd1 | 1.8 | 0.0 | 14.3 | 0.0 | 0.0 | 0.1 | 41.6 | 0 | 7 | ||||||
| sd2 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | ||||||
| sd3 | 5.6 | 0.2 | 25.7 | 0.2 | 0.0 | 0.1 | 22.5 | 0 | 13 | ||||||
| extended disk statistics | tty | cpu | |||||||||||||
| disk | r/s | w/s | Kr/s | Kw/s | wait | actv | svc_t | %w | %b | tin | tout | us | sy | wt | id |
| sd0 | 2.6 | 3.0 | 20.7 | 22.7 | 0.1 | 0.2 | 59.2 | 6 | 19 | 0 | 84 | 3 | 85 | 11 | 0 |
| sd1 | 4.2 | 1.0 | 33.5 | 8.0 | 0.0 | 0.2 | 47.2 | 2 | 23 | ||||||
| sd2 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | ||||||
| sd3 | 10.2 | 1.6 | 51.4 | 12.8 | 0.1 | 0.3 | 31.2 | 3 | 31 | ||||||
example%
The fields have the following meanings:
disk name of the disk
r/s reads per second
w/s writes per second
Kr/s kilobytes read per second
Kw/s kilobytes written per second
wait average number of transactions waiting for service (queue length)
actv average number of transactions actively being serviced (removed from the queue but not yet completed)
svc_t average service time, in milliseconds
%w percent of time there are transactions waiting for service (queue non-empty)
%b percent of time the disk is busy (transactions in progress)
example% iostat -xnp
| extended disk statistics | ||||||||||||||||
| r/s | w/s | kr/s | kw/s | wait | actv | wsvc_t | asvc_t | %w | %b | device | ||||||
| 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | server:/export/home/bob | ||||||
| 0.0 | 0.2 | 0.2 | 1.1 | 0.0 | 0.0 | 13.4 | 17.1 | 0 | 0 | c0t0d0 | ||||||
| 0.0 | 0.0 | 0.1 | 0.2 | 0.0 | 0.0 | 22.3 | 27.2 | 0 | 0 | c0t0d0s2 | ||||||
| 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 2.4 | 27.9 | 0 | 0 | c0t0d0s6 | ||||||
example%
The fields have the same meanings as in the previous example, with the following additions:
wsvc_t average service time in wait queue, in milliseconds
asvc_t average service time active transactions, in milliseconds
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWcsu |
SEE ALSO
sar(1), sar(1M), vmstat(1M), attributes(5)
Solaris 1.x to 2.x Transition Guide
System Administration Guide
SunOS 5.6 — Last change: 3 Apr 1997