Linux内存监控的12种方法全面掌握系统资源使用情况
更多Python学习内容:ipengtao.com监控系统的内存使用情况是系统管理和性能优化的关键部分之一。在 Linux 环境下,有多种方法来实现对内存的监控和管理。本文将介绍 12 种常用的方法,涵盖了从基本的命令行工具到更高级的监控工具的使用,帮助您全面掌握系统的资源使用情况。1. free 命令free命令用于显示系统内存的使用情况,包括总内存、已使用内存、空闲内存等。free-h示例..
更多Python学习内容:ipengtao.com
监控系统的内存使用情况是系统管理和性能优化的关键部分之一。在 Linux 环境下,有多种方法来实现对内存的监控和管理。本文将介绍 12 种常用的方法,涵盖了从基本的命令行工具到更高级的监控工具的使用,帮助您全面掌握系统的资源使用情况。
1. free 命令
free
命令用于显示系统内存的使用情况,包括总内存、已使用内存、空闲内存等。
free -h
示例输出:
total used free shared buff/cache available
Mem: 7.7G 3.1G 1.1G 1.2G 3.5G 2.3G
Swap: 2.0G 0B 2.0G
2. top 命令
top
命令可以实时查看系统的各项资源使用情况,包括内存、CPU、进程等。
top
示例输出:
Tasks: 257 total, 1 running, 256 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.0 us, 0.7 sy, 0.0 ni, 98.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 7818.7 total, 1174.9 free, 3291.9 used, 3352.0 buff/cache
MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 4183.2 avail Mem
3. vmstat 命令
vmstat
命令用于显示系统的虚拟内存使用情况,包括内存、磁盘、CPU 等。
vmstat 1 5
示例输出:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 1221008 330940 922332 0 0 0 1 13 19 0 0 100 0 0
4. sar 命令
sar
命令可以收集、报告和保存系统的性能数据,包括内存、CPU、磁盘等方面的信息。
sar -r
示例输出:
08:10:01 PM kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
08:20:01 PM 1259828 4397864 2285128 29.36 248272 3015904 2381884 15.59 2404508 2014540 52
08:30:01 PM 1243748 4381748 2302040 29.54 248672 3018064 2381884 15.59 2411572 2017944 60
5. /proc/meminfo 文件
/proc/meminfo
文件包含了系统的内存信息,可以通过查看该文件来获取内存使用情况。
cat /proc/meminfo
示例输出:
MemTotal: 7818180 kB
MemFree: 1207196 kB
MemAvailable: 4115164 kB
Buffers: 329540 kB
Cached: 2884056 kB
SwapCached: 0 kB
6. pmap 命令
pmap
命令用于显示进程的内存映射信息,包括进程占用的内存地址、权限、大小等。
pmap PID
示例输出:
0000559b7ffac000 2060K r-x-- /usr/bin/bash
0000559b801cb000 244K r--s- /usr/lib/locale/locale-archive
0000559b801ff000 4K r---- /usr/lib/locale/locale-archive
...
mapped: 202476K writeable/private: 456K shared: 4K
7. smem 命令
smem
命令用于以更友好的方式显示内存使用情况,并支持按照进程进行排序。
smem
示例输出:
PID User Command Swap USS PSS RSS
1 root /sbin/init 0.00% 0.00% 0.01% 0.01%
2 root [kthreadd] 0.00% 0.00% 0.00% 0.00%
...
2135 user /usr/bin/firefox 0.00% 0.51% 1.46% 3.13%
8. atop 命令
atop
命令是一个交互式的系统监控工具,可以显示系统资源使用情况的详细信息。
atop
示例输出:
ATOP - myhostname 2022/01/01 08:00:01 10s elapsed
PR VIRT RES SHR S CPU% MEM% TIME+ COMMAND
1 2500 456 312 S 0.0 0.0 0:00.01 bash
9. htop 命令
htop
命令是一个交互式的系统监控工具,类似于 top 命令,但提供了更加友好的界面和功能。
htop
10. glances 命令
glances
命令是一个交互式的系统监控工具,可以显示系统各项资源的使用情况,并支持网络监控和插件扩展。
glances
11. Grafana + Prometheus
Grafana 和 Prometheus 是一组流行的开源监控工具,可以实现对系统资源的监控和可视化。
12. 自定义脚本
还可以编写自定义的监控脚本,通过调用系统命令或读取/proc 文件系统来获取系统资源使用情况,并根据需求进行处理和展示。
通过以上 12 种方法,可以全面掌握 Linux 系统的内存使用情况,及时发现和解决资源瓶颈问题,确保系统的稳定性和性能表现。
如果你觉得文章还不错,请大家 点赞、分享、留言 ,因为这将是我持续输出更多优质文章的最强动力!
更多Python学习内容:ipengtao.com
如果想要系统学习Python、Python问题咨询,或者考虑做一些工作以外的副业,都可以扫描二维码添加微信,围观朋友圈一起交流学习。
我们还为大家准备了资料和副业项目合集,感兴趣的小伙伴快来找我领取一起交流学习哦!
往期推荐
点击下方“阅读原文”查看更多
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)