linux-查看内存信息


Linux查看内存信息的几种方法有,通过/proc/meminfo文件、free命令、top命令、htop命令和vmstat命令等。

一、通过/proc/meminfo文件

/proc/meminfo 显示较为不友好,如下

[root@FZCTP-DB ~]# cat /proc/meminfo 
MemTotal:       65966848 kB
MemFree:          889116 kB
MemAvailable:   45478012 kB
Buffers:            1040 kB
Cached:         56090320 kB
SwapCached:       251808 kB
Active:         43912548 kB
Inactive:       17060336 kB
Active(anon):   15318844 kB
Inactive(anon):  2234540 kB
Active(file):   28593704 kB
Inactive(file): 14825796 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:      33030140 kB
SwapFree:       30908668 kB
Dirty:                24 kB
Writeback:             0 kB
AnonPages:       4634024 kB
Mapped:         10414980 kB
Shmem:          12671860 kB
Slab:            1918164 kB
SReclaimable:    1662388 kB
SUnreclaim:       255776 kB
KernelStack:       20448 kB
PageTables:      1366244 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    66013564 kB
Committed_AS:   25697732 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      140196 kB
VmallocChunk:   34326050816 kB
HardwareCorrupted:     0 kB
AnonHugePages:    569344 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      554876 kB
DirectMap2M:    66553856 kB

二、free 命令

free它是对 /proc/meminfo 收集到的信息的一个概述,free更精简、更容易理解。数据表示总额内存/已用内存/可用内存/交换内存大小(默认以kb为单位)

[root@FZCTP-DB ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:          64420        6891         880       12374       56649       44423
Swap:         32255        2071       30184

free显示的各个字段意义如下:

选项意义
total总安装内存
used正在运行的进程当前正在使用的内存(used= total – free – buff/cache)
free未使用的内存(free= total – used – buff/cache)
shared多个进程共享的内存
buffers作系统保留的内存,在进程需要时分配为缓冲区
cached存储在 RAM 中最近使用的文件
buff/cacheBuffers + Cached
available可用于启动新应用程序,无需交换的内存大小

为了更灵活输出结果,free 命令可以添加多个选项标志用来格式化输出

选项标志结果
-m以 MB 为单位的输出
-G以 GB 为单位输出
-l详细的低内存和高内存统计信息
-tRAM + swap
-s多少秒更新一次
-C更新多少次

三、top命令

top命令显示了每个进程的内存实时使用率。它提供了所有进程的常驻内存大小、程序总内存大小、共享库大小等的报告。

M #根据驻留内存大小进行排序。
P #根据CPU使用百分比大小进行排序。
T #根据时间/累计时间进行排序。
c #切换显示命令名称和完整命令行。
Tasks: 737 total,   1 running, 736 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.3 sy,  0.0 ni, 99.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.1 st
KiB Mem : 65966848 total,   898236 free,  7060244 used, 58008368 buff/cache
KiB Swap: 33030140 total, 30908668 free,  2121472 used. 45487072 avail Mem 
  scroll coordinates: y = 1/737 (tasks), x = 1/12 (fields)
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                      
45216 oracle    20   0   39.6g   6.8g   6.8g S   0.0 10.8  30:48.36 oracle                                                                                       
45224 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.8  73:53.75 oracle                                                                                       
45230 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.7  74:29.54 oracle                                                                                       
45218 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.7  71:58.33 oracle                                                                                       
45228 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.7  75:06.66 oracle                                                                                       
45232 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.6  73:44.73 oracle                                                                                       
45222 oracle    20   0   39.6g   6.1g   6.1g S   0.0  9.6  70:29.97 oracle                                                                                       
45226 oracle    20   0   39.6g   6.1g   6.0g S   0.0  9.6  72:31.86 oracle                                                                                       
45220 oracle    20   0   39.6g   6.1g   6.0g S   0.0  9.6  69:31.22 oracle                                                                                       
45238 oracle    20   0   39.6g   5.3g   5.3g S   0.0  8.4 162:42.33 oracle                                                                                       
 6774 oracle    20   0   39.6g   3.8g   3.8g S   0.0  6.0   3036:32 oracle                                                                                       
 1729 oracle    20   0   39.6g   3.7g   3.7g S   0.0  5.8   2:29.35 oracle                                                                                       
 1687 oracle    20   0   39.6g   3.6g   3.6g S   0.0  5.7   1:25.78 oracle                                                                                       
 1733 oracle    20   0   39.6g   3.5g   3.5g S   0.0  5.6   1:37.34 oracle                                                                                       
 1735 oracle    20   0   39.6g   3.4g   3.4g S   0.0  5.5   2:43.60 oracle

四、htop命令

命令 htop 与命令 top 类似。但是,命令 htop 的真正优势在于其用户友好的操作环境和更强大的控件。
命令 htop 输出包含颜色高亮,为进程提供完整的命令行,以及垂直和水平滚动的功能。

五、vmstat命令

vmstat 命令是报告虚拟内存统计信息的有用工具。它的返回提供有关进程、内存、分页、块 IO、捕获和 CPU 活动的一般信息。

[root@FZCTP-DB ~]# vmstat 2
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0 2121472 907312   1040 58008452    0    0     2     3    0    0  1  1 98  0  0
 1  0 2121472 908048   1040 58008424    0    0     0   559 11005 8373  0  1 97  0  2
 2  0 2121472 906636   1040 58008440    0    0     0   202 3799 4088  0  0 99  0  0
 0  0 2121472 909344   1040 58008444    0    0     0   328 2423 3291  0  0 100  0  0

进程
r:等待运行时的进程数。
b:处于不可中断睡眠状态的进程数。
内存
swpd:使用的虚拟内存大小。
free:空闲内存大小。
buff:用作缓冲区的内存大小。
cache:用作缓存的内存大小。
交换区
si:从磁盘换入的内存(/s) 。
so:交换到磁盘的内存(/s)。
IO 块
bi:从块设备接收到的块(块/s)。
bo:发送到块设备的块(块/s)。
系统
in:每秒中断次数,包括时钟。
cs:每秒上下文切换的次数。
CPU – 下面都是占总 CPU 时间的百分比。
us:运行非内核代码所花费的时间(用户时间,包括nice time)
sy:运行内核代码所花费的时间(系统时间)
id:空闲时间,在 Linux 2.5.41 之前,这包括 IO 等待时间。
wa:等待IO所花费的时间,在 Linux 2.5.41 之前,包含在 idle 中。
st:从虚拟机窃取的时间,在 Linux 2.6.11 之前,未知。

https://www.jb51.net/article/281693.htm#_label4
https://blog.csdn.net/Luckiers/article/details/123909819

  • 19
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux下,你可以使用多种方式来查看主机的内存信息。以下是几种常用的方法: 1. 使用gnome-system-monitor命令可以显示CPU历史、内存和交换历史以及网络历史。它可以实时查看内存的使用情况,但无法看到buffer和cache的使用情况。\[1\] 2. 使用cat /proc/meminfo命令可以查看动态更新的虚拟文件,其中包含了许多关于内存信息。这个命令提供了比较全面的内存信息。\[1\] 3. 使用free命令可以快速查看内存的使用情况,这是一个经常使用的命令。你可以使用-h参数以更人性化的方式显示内存的单位,或者使用-m参数以M的形式显示内存。\[1\] 4. 使用dmidecode命令可以获取硬件信息,包括BIOS、系统、主板、处理器、内存、缓存等等。你可以使用dmidecode | grep -A16 'Memory Device'命令来查看内存信息。\[2\] 需要注意的是,在Linux中,为了提升读写性能,一部分内存资源被用作缓存或缓冲内存。在内核看来,这部分buffer/cache属于已被使用的内存。当应用程序申请内存而可用的free内存不足时,内核会回收buffer和cache来满足应用程序的内存需求。\[3\] 希望以上信息对你有所帮助! #### 引用[.reference_title] - *1* [Linux系统如何查看内存](https://blog.csdn.net/qq_44333320/article/details/125985576)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【小工具】- linux如何查看内存硬件信息(包含卡槽数量和每块内存条参数)](https://blog.csdn.net/myhes/article/details/120785965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Linux系统查看内存使用情况](https://blog.csdn.net/bai_mi_student/article/details/123866944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值