iostat(8) on Solnix vs Linux and the BSDs
On Solnix, iostat is the illumos /usr/bin/iostat. The first positional number is the interval and the second is the count, with no -w or -c count option as on the BSDs. With no display option it implies -x, so it prints extended disk statistics, not the short tty/disk/cpu line the BSDs print.
The manual pages
What Solnix runs
A default Solnix system runs the illumos iostat at /usr/bin/iostat. No other variants are shipped. For more general system statistics the page points to sar(1), sar(8) and vmstat(8).
Differences
| Compared with | Topic | What differs |
|---|---|---|
| FreeBSD, OpenBSD, NetBSD | interval and count syntax | Solnix takes [interval [count]] as trailing positional arguments. FreeBSD, OpenBSD and NetBSD take the interval with -w wait and the repeat count with -c count. A BSD script using -w or -c fails on Solnix.Source: Solnix iostat(8) SYNOPSIS; FreeBSD iostat(8) -w, -c; OpenBSD iostat(8) -w, -c; NetBSD iostat(8) -w, -c |
| Linux | interval and count syntax | Solnix and Linux both take interval then count as trailing positional arguments after the device list, so this part of an invocation is the same. Source: Solnix iostat(8) SYNOPSIS; Linux iostat(1) SYNOPSIS, DESCRIPTION (interval and count) |
| FreeBSD, OpenBSD, NetBSD | default report when no option is given | On Solnix, if no -x, -e or -E is given, -x is implied for -x and -Y. The BSD pages describe a default display of tty, disk and CPU columns. On OpenBSD and NetBSD, -d is the default disk display.Source: Solnix iostat(8) -x, -Y; OpenBSD iostat(8) -d, -C, -T; NetBSD iostat(8) -d, -C, -T |
| all four | first report covers time since boot | On Solnix the first line covers all time since boot and each later line covers the prior interval. Linux omits the first report with -y. FreeBSD skips the since-boot figures only with -I. The Solnix page documents no option to drop the first line.Source: Solnix iostat(8) DESCRIPTION; Linux iostat(1) -y; FreeBSD iostat(8) DESCRIPTION, -I |
| all four | -I meaning | Solnix -I reports counts per interval instead of rates. FreeBSD -I shows totals for the period. OpenBSD and NetBSD -I show running totals. Linux has no -I in its option list.Source: Solnix iostat(8) -I; FreeBSD iostat(8) -I; OpenBSD iostat(8) -I; NetBSD iostat(8) -I; Linux iostat(1) SYNOPSIS |
| Linux, FreeBSD | -h meaning and Solnix has no -h | Solnix has no -h. On Linux, -h is --human --pretty. On FreeBSD, -h is 'top' mode, which sorts devices by bytes per cycle.Source: Solnix iostat(8) SYNOPSIS; Linux iostat(1) -h; FreeBSD iostat(8) -h |
| Linux, FreeBSD, NetBSD | -x meaning | On Solnix, -x shows extended disk statistics and is implied when no display is requested. Linux -x also shows extended statistics. On FreeBSD, -x shows extended statistics and suppresses the default CPU and TTY columns. On NetBSD, -x overrides other display options and ignores -C and -T.Source: Solnix iostat(8) -x; Linux iostat(1) -x; FreeBSD iostat(8) -x; NetBSD iostat(8) -x |
| all four | -z meaning | On Solnix, -z skips lines whose data values are all zeros. FreeBSD -z only works with -x. Linux -z omits idle devices. NetBSD -z replaces zero values with spaces and does not remove the lines. OpenBSD has no -z.Source: Solnix iostat(8) -z; FreeBSD iostat(8) -z; Linux iostat(1) SYNOPSIS (-z); NetBSD iostat(8) -z; OpenBSD iostat(8) SYNOPSIS |
| all four | -n meaning | Solnix -n shows descriptive device names such as cXtYdZ, and -m (only with -n) shows mount points. FreeBSD -n limits the number of devices shown. The Solnix equivalent for limiting is -l n. Linux -N shows device mapper names.Source: Solnix iostat(8) -n, -m, -l; FreeBSD iostat(8) -n; Linux iostat(1) -N |
| all four | -c meaning | Solnix -c reports CPU percentages (user, system, dtrace probes, idle). Linux -c also shows CPU utilisation. On FreeBSD, OpenBSD and NetBSD, -c count is the repeat count and CPU display is -C.Source: Solnix iostat(8) -c; Linux iostat(1) -c; FreeBSD iostat(8) -c, -C; OpenBSD iostat(8) -c, -C; NetBSD iostat(8) -c, -C |
| all four | device error and CSV output | Solnix has -e and -E for device error statistics, and -r for comma-separated output. Linux offers -o JSON instead. The BSD pages show no equivalent options for these.Source: Solnix iostat(8) -e, -E, -r; Linux iostat(1) -o; FreeBSD/OpenBSD/NetBSD iostat(8) SYNOPSIS |
| all four | timestamps | Solnix -T u|d prints a timestamp, as a time(2) value or a standard date. On Linux the lowercase -t prints the time for each report. On FreeBSD, OpenBSD and NetBSD, -T selects tty statistics. On Solnix, -t reports terminal characters.Source: Solnix iostat(8) -T, -t; Linux iostat(1) -t; FreeBSD iostat(8) -T; OpenBSD iostat(8) -T; NetBSD iostat(8) -T |
Standards
- POSIX: iostat is not a POSIX.1-2024 utility.
- NetBSD: The SEE ALSO section refers to 'Interpreting system activity' in Installing and Operating 4.3BSD; the bundle shows no other standard.
Writing portable scripts
- Avoid
-T,-h,-t,-zand-Iin portable scripts. They mean different things on Solnix, Linux and the BSDs. - Use
-wand-con the BSDs but trailing interval and count on Solnix and Linux, so branch on the platform.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.