我正在编写一个使用/ proc / diskstat报告指标的例程,它会报告磁盘活动的数据。这些数字并没有加起来。
示例:
[esm@graphdb301p:lib]$ cat /proc/diskstats
1 0 ram0 0 0 0 0 0 0 0 0 0 0 0
...
1 15 ram15 0 0 0 0 0 0 0 0 0 0 0
7 0 loop0 0 0 0 0 0 0 0 0 0 0 0
...
7 7 loop7 0 0 0 0 0 0 0 0 0 0 0
8 0 sda 357988 499995 9002150 1092949 36213840 257661933 2352749204 76049110 0 20178750 77123506
8 1 sda1 691 434 13908 345 148 5213 10740 1037 0 1021 1381
8 2 sda2 629 1391 16160 1658 715 10378 88744 2520 0 3934 4174
8 3 sda3 356344 498170 8969490 1090866 36212977 257646342 2352649720 76045553 0 20174790 77117871
通过阅读文档,我应该能够添加sda1 + sda2 + sda3 = sda。这几乎是正确的。但是,它已经关闭了:
356344 sda3
+ 629 sda2
+ 691 sda1
------
= 357644 BUT
357988 IS THE sda VALUE.
为什么不添加???
答案 0 :(得分:2)
分区表总是占用几个字节。此外,可能存在标记为坏的块,大多数HD即使在新的情况下也会有一些坏块。