linux如何查看内存:多命令对比

linux如何查看内存,你优先用free看整体内存统计,top、htop看进程实时占用,cat/proc/meminfo读取内核原始内存明细,free命令输出里的available是程序实际可申请内存,比free字段更有参考价值,free适合脚本、定时监控,top适合排查内存占用高的进程,htop需要额外安装,适合交互式运维,这些命令在主流CentOS、Ubuntu、Debian发行版都能直接运行,嵌入式裁剪版Linux可能缺少htop工具。

linux如何查看内存:free命令实操

直接输入free默认以KB为单位展示,加上-h参数,输出会自动换算成GB、MB,可读性更强。输出分为total、used、free、shared、buff/cache、available六列,total是物理总内存,used是已经被占用的内存,free是完全空闲未使用的内存,buff/cache是系统缓存读写文件的内存,这部分内存可以在程序需要时快速回收。

看available。

不要单独盯着free数值判断内存不足,很多新手只看free数值很低就判定内存过载,实际上缓存内存会被系统动态回收,这个判断方式容易触发不必要的告警。free-s3可以设置每3秒刷新一次内存数据,适合持续观察一段时间内的内存变化,脚本里可以用free-b获取字节单位数据,方便后续数值计算。

linux如何查看内存:top与htop查看进程内存

执行top之后,界面顶部会展示系统整体内存概况,按M键可以把进程按照内存占用从高到低排序,%MEM列代表单个进程占用物理内存的比例,VIRT是虚拟内存,包含交换分区、共享库,RES是实际驻留物理内存,排查内存泄漏优先看RES持续上涨的进程。

htop的布局更友好,鼠标可操作,支持直接选中进程结束,但是基础镜像默认不带这个工具,CentOS需要yuminstallhtop,Ubuntu使用aptinstallhtop安装。

linux如何查看内存:/proc/meminfo原始文件读取

cat/proc/meminfo读取内核维护的原始内存信息,里面包含MemTotal、MemFree、MemAvailable、Buffers、Cached、SwapTotal、SwapFree等细分字段,适合需要精确采集指标、自研监控脚本的场景,这个文件由内核实时生成,不需要额外依赖程序,所有支持proc文件系统的Linux都可以读取。

命令输出内容安装需求适合场景
free-h整机内存汇总自带快速查看整体余量、脚本采集
top整机+进程内存自带实时排查占用高进程
htop整机+进程内存手动安装交互式运维查看
cat/proc/meminfo内核原始明细自带精细指标采集、调试

该方法的适用边界是,proc文件系统必须开启,部分极简容器、定制嵌入式系统会关闭proc挂载,此时cat/proc/meminfo无法读取内存数据,只能依靠free这类工具。

查看swap交换内存,free、top、meminfo里都有对应字段,swap持续大量写入,代表物理内存资源紧张,需要优化程序或者扩容内存。

敬慕百科汇集百科知识与游戏文化,带你发现世界的每一个精彩角落。

想要了解更多关于linux如何查看内存的文章欢迎访问:百科