如何查找Linux系统内存利用率?
时间:2020-01-09 10:42:00 来源:igfitidea点击:
如何在RHEL/CentOS /任何其他Linux发行版中查找系统/服务器内存利用率?
您需要使用" free>"命令,该命令显示系统中可用和已用物理内存和交换内存的总量,以及内核使用的缓冲区。
另一种选择是查询/proc/meminfo
文件或者使用vmstat comamnd。
/proc/meminfo文件也提供相同的信息。
让我们看看如何在Linux上快速使用这些命令,以从shell提示中获取内存利用率信息。
free命令示例
在shell提示符下执行free命令以从/proc/meminfo以人类可读的格式显示系统中的可用和已用内存量:
$ free $ free -m
输出:
total used free shared buffers cached Mem: 2010 1965 45 0 152 776 -/+ buffers/cache: 1036 974 Swap: 2047 137 1910
-b,-k,-m,-g选项以字节,KB,MB或者GB显示输出。
正如我所说的,您使用cat命令显示/proc/meminfo的内容:
$ cat /proc/meminfo $ less /proc/meminfo
输出示例:
MemTotal: 12195116 kB MemFree: 157328 kB Buffers: 375424 kB Cached: 9298412 kB SwapCached: 22616 kB Active: 5714924 kB Inactive: 5473744 kB Active(anon): 870136 kB Inactive(anon): 644700 kB Active(file): 4844788 kB Inactive(file): 4829044 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 6291448 kB SwapFree: 6168080 kB Dirty: 35760 kB Writeback: 0 kB AnonPages: 1493084 kB Mapped: 567616 kB Shmem: 4 kB Slab: 667828 kB SReclaimable: 566912 kB SUnreclaim: 100916 kB KernelStack: 3240 kB PageTables: 54692 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 12389004 kB Committed_AS: 4022128 kB VmallocTotal: 34359738367 kB VmallocUsed: 52908 kB VmallocChunk: 34359680588 kB HardwareCorrupted: 0 kB AnonHugePages: 1212416 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 7488 kB DirectMap2M: 12574720 kB
每[延迟]秒更新一次free命令
要每5秒更新一次,请执行:
# free -s 5
传递-c选项来更新[count]次,即每2秒更新一次free命令3次,执行:
# free -s 2 -c 3
输出示例:
total used free shared buffers cached Mem: 12195116 11992716 202400 0 374820 9255356 -/+ buffers/cache: 2362540 9832576 Swap: 6291448 123368 6168080 total used free shared buffers cached Mem: 12195116 11992468 202648 0 374820 9255112 -/+ buffers/cache: 2362536 9832580 Swap: 6291448 123368 6168080 total used free shared buffers cached Mem: 12195116 11993700 201416 0 374824 9255140 -/+ buffers/cache: 2363736 9831380 Swap: 6291448 123368 6168080
top/atop/htop
命令
top命令显示Linux任务,包括进程使用的内存。
atop命令或者htop命令与工具类似,是带有其他选项的顶部工具:
# top
# atop
# htop
vmstat命令示例
vmstat命令提供了更多信息:
$ vmstat
输出:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 140480 43636 158196 797692 1 0 108 220 1 4 7 5 87 1 0
了解vmstat内存选项
- swpd:使用的虚拟内存量。
- free:空闲内存量。
- buff:用作缓冲区的内存量。
- cache:用作缓存的内存量。
- inact:不活动的内存量(请参阅-a选项)。
- active:活动内存量(请参阅-a选项)。
$ vmstat -a
输出:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free inact active si so bi bo in cs us sy id wa st 0 1 140480 37376 109516 1730040 1 0 108 220 1 4 7 5 87 1 0
以下命令每秒显示一行新的利用率数据
$ vmstat 1
以下命令每2秒显示一条新行,但仅在接下来的10秒内显示:
$ vmstat 2 10
输出示例:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free inact active si so bi bo in cs us sy id wa st 4 0 139216 23508 130644 1723680 1 0 108 220 1 5 7 5 87 1 0 2 0 139216 23252 130668 1723816 0 0 0 410 3242 11472 9 7 84 0 0 1 0 139216 23120 130656 1724012 0 0 0 750 3280 11592 3 6 90 1 0 0 0 139216 22996 130588 1724180 0 0 0 426 3272 11052 2 5 93 0 0 2 0 139216 20988 129932 1726980 0 0 6 1146 3353 12105 14 9 74 2 0 1 0 139216 20244 129900 1727216 0 0 0 392 3238 11752 8 7 85 0 0 1 0 139216 20120 129868 1727352 0 0 0 444 3197 11173 2 5 93 0 0 1 0 139216 25964 129852 1721044 0 0 0 268 3147 9269 1 4 95 0 0 3 0 139216 25964 129748 1721196 0 0 2 132 3199 10540 1 4 95 0 0 1 0 139216 25964 129676 1721332 0 0 0 456 3213 10608 2 4 93 1 0
使用vmstat显示内存统计信息
将-s
选项传递给vmstat命令可以显示各种事件计数器和内存统计信息的表:
# vmstat -s
输出示例:
12195116 total memory 12020142 used memory 5697412 active memory 5475156 inactive memory 174964 free memory 375496 buffer memory 9299280 swap cache 6291448 total swap 123368 used swap 6168080 free swap 9174417 non-nice user cpu ticks 2353 nice user cpu ticks 3338415 system cpu ticks 831004606 idle cpu ticks 327853 IO-wait cpu ticks 9074 IRQ cpu ticks 1075734 softirq cpu ticks 0 stolen cpu ticks 5001944 pages paged in 1015656377 pages paged out 28385 pages swapped in 54024 pages swapped out 2347308881 interrupts 1694761409 CPU context switches 1387092323 boot time 246261 forks