我有一台运行 Linux(Ubuntu 16.04 amd64)的服务器(虚拟)。它分配了 8GB 内存,并且全部被使用,但我不知道是做什么用的。
root@server:~# free -k
total used free shared buff/cache available
Mem: 8176980 7892288 121580 22000 163112 94516
Swap: 1572860 206800 1366060
root@server:~# grep VmHWM /proc/*/status | awk 'BEGIN {tot=0} {tot+=$2} END {print tot}'
4293060
为什么 VmHWM 的总和不接近 8GB?我如何才能找出消耗内存(并导致服务器交换)的原因?有没有一些好的网站可以详细但清晰地解释 Linux 内存/资源的使用情况?:)
更多信息:
root@server:~# uname -a
Linux server 3.13.0-67-generic #110-Ubuntu SMP Fri Oct 23 13:24:41 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
root@server:~# cat /proc/meminfo
MemTotal: 8176980 kB
MemFree: 151200 kB
Buffers: 10420 kB
Cached: 77100 kB
SwapCached: 27780 kB
Active: 2870576 kB
Inactive: 837248 kB
Active(anon): 2834228 kB
Inactive(anon): 808112 kB
Active(file): 36348 kB
Inactive(file): 29136 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1572860 kB
SwapFree: 1359252 kB
Dirty: 176 kB
Writeback: 0 kB
AnonPages: 3594152 kB
Mapped: 41096 kB
Shmem: 22036 kB
Slab: 65724 kB
SReclaimable: 39444 kB
SUnreclaim: 26280 kB
KernelStack: 5240 kB
PageTables: 37636 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5661348 kB
Committed_AS: 4266360 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 289196 kB
VmallocChunk: 34359442456 kB
HardwareCorrupted: 0 kB
AnonHugePages: 2009088 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 65472 kB
DirectMap2M: 8323072 kB
答案1
尝试随时将其与 vmrss 的结果进行比较,看是否匹配。
还可以尝试禁用透明大页面。并与虚拟化管理员核对,看看是否保留了整个 8 GB。