在iostat中,为什么kB_wrtn/s和kB_wrtn相同?

在iostat中,为什么kB_wrtn/s和kB_wrtn相同?

/dev/sdc 是 SATA 硬盘。有时,在某些情况下,kB_read 和 kB_wrtn 字段是否显示总计数?这里它似乎与每秒值相同。

  • Linux 内核 5.4.0-26-通用。
  • 系统统计版本 12.2.0

iostat -dz 1

Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
sdc              40.00         0.00        21.00         0.00          0         21          0


Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
dm-0              6.00         0.00        24.00         0.00          0         24          0
sdc              42.00         0.00        42.50         0.00          0         42          0


Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
dm-0              5.00         0.00        20.00         0.00          0         20          0
sdc              43.00         0.00        36.00         0.00          0         36          0


Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
sdc              48.00         0.00        25.00         0.00          0         25          0


Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
sdc              36.00         0.00        18.50         0.00          0         18          0


Device             tps    kB_read/s    kB_wrtn/s    kB_dscd/s    kB_read    kB_wrtn    kB_dscd
sdc              40.00         0.00        21.00         0.00          0         21          0

答案1

kB_wrtn是写入的总金额在 iostat 更新间隔期间。我想您使用一秒的间隔来生成问题中的输出,其效果kB_wrtn/sec是相同的。尝试不同的时间间隔来查看差异。

答案2

kB_wrtn列表示自命令启动以来写入磁盘的总千字节数iostat,而kB_wrtn/s列表示在上一个报告时间间隔内每秒写入磁盘的千字节数。

因此,如果每秒生成结果,随着越来越多的数据写入磁盘,iostat的最大值将随着时间的推移而不断增加。kB_wrtn另一方面, 的最大值kB_wrtn/s仅反映在单个报告间隔期间观察到的最大写入速率。

例如,假设报告间隔设置为 1 秒,在一个间隔内,将 1 GB 数据写入磁盘。然后, 的最大值kB_wrtn将增加 1 GB,而 的最大值kB_wrtn/s将仅为 1024(假设在该时间间隔内没有执行其他写入操作)。

相关内容