Linux 查看内存使用情况的几种方法

科技资讯 投稿 5100 0 评论

Linux 查看内存使用情况的几种方法

在运行 Linux 系统的过程中为了让电脑或者服务器以最佳水平运行,常常需要监控内存统计信息。

查看或者获取 Linux 中的内存使用情况既可以通过命令的方式,也可以通过桌面端的GUI程序查看。

GUI 查看

如果你使用的环境是带有图形界面的 Linux 版本,那么必定是支持使用图形界面进行服务器管理的。那么,内存使用情况的可视化会使得某些数据集更加清晰自然。

如何访问系统监视器:

    导航到显示应用程序。
  1. 在搜索栏中输入 System Monitor 并访问该应用程序。
  2. 选择资源选项卡。
  3. 显示实时内存消耗的图形概览,包括历史信息。

命令获取

虚拟文件 /proc/meminfo

输入指令

cat /proc/meminfo

指令返回

命令 free

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

和读取 /proc/meminfo 文件相比,free 命令提供的信息较为精简,但是它更容易理解。

选项标志 结果
-b 以 Byte 为单位输出
-k 以 KB 为单位的输出
-m 以 MB 为单位的输出
-G 以 GB 为单位输出
-l 详细的低内存和高内存统计信息
-o 旧格式(无 -/+缓冲区/缓存行)
-t RAM + swap
-s 多少秒更新一次
-C 更新多少次

命令 vmstat

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

进程
r:等待运行时的进程数。
b:处于不可中断睡眠状态的进程数。

swpd:使用的虚拟内存大小。
free:空闲内存大小。
buff:用作缓冲区的内存大小。
cache:用作缓存的内存大小。

si:从磁盘换入的内存(/s 。
so:交换到磁盘的内存(/s)。

bi:从块设备接收到的块(块/s)。
bo:发送到块设备的块(块/s)。

in:每秒中断次数,包括时钟。
cs:每秒上下文切换的次数。

us:运行非内核代码所花费的时间(用户时间,包括nice time)
sy:运行内核代码所花费的时间(系统时间)
id:空闲时间,在 Linux 2.5.41 之前,这包括 IO 等待时间。
wa:等待IO所花费的时间,在 Linux 2.5.41 之前,包含在 idle 中。
st:从虚拟机窃取的时间,在 Linux 2.6.11 之前,未知。

命令 top

正常运行时间
平均负荷
正在运行的任务数
登录用户数
CPU 数量/CPU 利用率
内存/交换区的系统进程

top 命令输入后,数据会不断更新,这样你可以实时跟踪进程状况。

如果你需要了解关于 top 命令的所有可用选项的完整信息,可以通过 Linux 中的 man top 命令查看。

命令 htop

命令 htop 输出包含颜色高亮,为进程提供完整的命令行,以及垂直和水平滚动的功能。

    顶部区域提供摘要信息并包含图形仪表和汇总信息统计。
  1. 接下来的部分按进程组织了详细数据,这样您就可以轻松地对单个进程执行操作,支持鼠标直接点击选中进程。
  2. 屏幕底部列出的快捷方式将使您能够快速操作和配置进程,而省去输入特定指令。

命令 htop 在这个发行版里其实没有默认安装,如果发现指令不存在,可以通过下面的指令安装

sudo apt install htop

学习可以等,时间不等人!

关注我,带你学习编程领域更多核心技能!

编程笔记 » Linux 查看内存使用情况的几种方法

赞同 (26) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽