Linux 下如何检查内存使用率
在排查系统问题,或者应用变慢,或者不明原因问题时,第一件事就是要检查系统的内存使用率。
本文讲解如何在Linux中使用不同的几个命令来检查RAM内存使用率。
一、free命令
free命令是检查一个Linux系统中内存使用率最常用的命令。它显示关于内存总量,已经使用的内存以及空闲内存的相关信息。
通常,free运行时加上-h选项,意味着以人类可读的格式打印输出:
free-h
totalusedfreesharedbuff/cacheavailable Mem:3936108725213025962427 Swap:000
这里是每一列的意义:
- total-应用可以使用的内存总数
- used-已经被使用的内存。它是这样计算的:used=total-free-buffers-cache
- free-空闲的/未被使用的内存。
- shared-这一列可以被忽略。它仅仅用于向后兼容。
- buff/cache-内核缓存,页面缓存和slab
- avaiable-可用来启动新应用的估计可用内存,不包括交换内存。
这个free命令打印关于物理内存和交换内存的信息。
二、top命令
top是一个命令工具,它展示正在运行的进程的实时信息。它同时显示系统概要,包括内存使用率。
想要运行命令,简单输入top:
top
输出将会看起来像下面这样:
输出头部包括以下信息:系统中内存,空闲内存,被使用内存,以及交换内存。
这个%MEM一列,提供信息包括每一个运行进程中被使用的共享内存占可用物理内存的比例。
三、/proc/meminfo
最简单的检查RAM内存的方式就是去显示/proc/meminfo虚拟文件。这个文件被free,top,ps以及其他系统信息命令所使用。
使用less或者cat来查看/proc/meminfo文件的内容。
cat/proc/meminfo
文件包含了一系列信息,关于系统内存和交换内存使用率:
MemTotal:4030592kB
MemFree:401804kB
MemAvailable:2507504kB
...
这个来自/proc/meminfo文件的信息可以被解析,并且在shell脚本中使用。
四、ps_mem脚本
ps_mem是一个Python脚本,他可以报告每个程序的RAM使用率。它在Python2和3中都可以使用,并且可以使用pip进行安装。
sudopip3installps_mem
运行ps_mem需要管理员权限:
sudops_mem
输出将会以升序显示包括每一个运行程序的内存使用率:
Private+Shared=RAMused Program ... 11.9MiB+20.2MiB=32.1MiB nginx(4) 8.2MiB+42.4MiB=50.6MiB systemd-journald 55.8MiB+307.2MiB=363.0MiB php-fpm7.4(6) 233.9MiB+234.0MiB=467.9MiB redis-server 578.2MiB+578.6MiB=1.1GiB mysqld --------------------------------- 2.2GiB =================================
五、总结
我们已经向你展示一些命令,你可以使用它们来检查系统内存使用率。
原文:https://linuxize.com/post/check-memory-linux/
以上就是Linux下如何检查内存使用率的详细内容,更多关于Linux检查内存使用率的资料请关注毛票票其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。