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

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

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

sar如何得出这些数字?如果将kbmemfreekbmemusedused一起添加,则buff/cache似乎还可以,并且free也很有意义。但是kbbufferskbcached看起来相去甚远-我的假设是kbmemused - kbbuffers - kbcached = used (output of free),但这并不匹配。

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

最佳答案

无需procps工具,似乎会将Slab:/proc/meminfo添加到其缓存的输出中。参见proc / sysinfo.c kb_main_cached

因此,要从sar获得等效的输出,必须将kbcachedkbslabsar -r ALL 1加在一起。

关于linux - 使用sar命令会导致Fedora 22上的内存统计信息错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30981063/

10-10 12:57