0

我正在尝试通过收集各种信息来监视一些服务器sar。所有应该监控的系统当前都在运行 Fedora 22。不幸的是,我无法获得正确的内存读数。

> 免费: total used free shared buff/cache available Mem: 1017260 34788 150984 68 831488 816204 Swap: 524284 20960 503324

> sar -r 1: kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty 150996 866264 85.16 40 60784 169524 11.00 39572 31068 164

sar 是如何得出这些数字的?kbmemfree看起来没问题,如果你把和从一起kbmemused添加也很有意义。但是,看起来很遥远-我的假设是,但这不匹配。usedbuff/cachefreekbbufferskbcachedkbmemused - kbbuffers - kbcached = used (output of free)

难道我做错了什么?自两天以来,我一直在努力解决这个问题,并且无法找到任何进一步的信息。

4

1 回答 1

0

free from procps 工具似乎添加Slab:/proc/meminfo它的缓存输出中。参见 proc/sysinfo.c kb_main_cached

因此,要从 sar 获得等效的输出,您需要将kbcachedkbslabfrom加sar -r ALL 1在一起。

于 2016-11-11T12:14:51.147 回答