Linux如何查看服务器内存命令?

在Linux中查看服务器内存,常用命令: ,1. **free -h**:直观显示内存总量、已用、空闲及缓存情况(-h自动转换GB/MB单位)。 ,2. **top** 或 **htop**:实时动态查看内存占用(按 q 退出)。 ,3. **cat /proc/meminfo**:获取详细内存统计信息。

🔍 一、free 命令:基础内存状态速查

命令示例

free -h

输出示例

              total    used    free  shared  buff/cache   available
Mem:           7.6G    2.1G    1.2G    123M        4.3G        5.0G
Swap:          2.0G    0B      2.0G

关键参数解析

  • total:物理内存总量
  • used:已使用内存(含系统缓存)
  • free:完全未使用的内存
  • buff/cache:缓存/缓冲区占用量(可回收利用)
  • available核心指标!表示应用实际可用内存(含可回收缓存)

💡 建议始终使用 -h(人性化显示单位)或 -m(以MB显示)。available 值低于总内存10%时需警惕内存不足。


📊 二、top / htop 命令:动态内存监控

top 命令(系统自带)

执行后按 M 按内存排序进程:

top

输出关键行

MiB Mem :   7854.8 total,   1234.2 free,    ...   4567.3 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,    ... 

htop 命令(需安装,更直观)

htop

Linux如何查看服务器内存命令?

✅ 优势:实时可视化内存占用、进程排序、树状结构展示。


📁 三、/proc/meminfo 文件:底层详细数据

cat /proc/meminfo

核心参数解析

MemTotal:       7854864 kB   # 总内存
MemFree:         123456 kB   # 空闲内存
Buffers:          23456 kB   # 缓冲区用量
Cached:         3456789 kB   # 页面缓存
SwapCached:           0 kB   # 交换缓存
Shmem:           123456 kB   # 共享内存
...

⚠️ 注意:此文件数据单位为 kB,需自行换算为GB(值/1048576)。


📉 四、vmstat:内存趋势与性能分析

vmstat -s -S M  # 以MB为单位显示统计摘要

输出示例

      7854 M total memory
      1234 M free memory
      2345 M buffer memory
      3456 M swap cache
       0 M swapped out

🔧 高级用法:vmstat 2 5(每2秒采样1次,共5次)监控内存变化趋势。


🛠️ 五、专业工具扩展

工具 安装命令 特点
smem sudo apt install smem 按PSS/USS统计实际物理内存占用
glances pip install glances 全资源监控仪表盘
nmon sudo apt install nmon IBM性能分析神器,支持导出报表

💎 六、场景化诊断技巧

  1. 内存泄漏检测
    top 中持续增长的进程 RES 值 → 结合 pidstat -r 60 跟踪

  2. 缓存利用率优化
    free 中高 buff/cache + 低 free → 正常现象(Linux主动利用缓存加速IO)

  3. 交换空间告警
    vmstatsi(换入)/so(换出)>0 → 物理内存不足导致性能下降


❓ 常见疑问解答

Q:free 显示内存几乎用光,但 available 充足,是否正常?
正常! Linux会最大限度利用内存作缓存(buff/cache),当应用需要时自动释放。

Q:如何计算应用程序真实内存占用?
👉 推荐公式:
实际物理内存 = RSS - Shared
工具:smem -p -P nginx (统计nginx进程组的私有内存)


📚 引用说明

  • 参考 Linux man 手册(man free/man top/man proc
  • 数据指标定义依据 内核文档
  • 运维方法论参考《Linux性能优化大师》& Google SRE实践指南

原创声明基于多年Linux系统管理经验整理,验证环境为CentOS 7+/Ubuntu 20.04 LTS。

通过以上工具组合,您可精准掌握服务器内存健康状态,及时防范性能风险!💪

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/15512.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月8日 14:50
下一篇 2025年6月8日 15:00

相关推荐

  • Ubuntu如何安装Caffe框架

    在Linux安装Caffe需先安装依赖库(如CUDA、cuDNN、OpenCV、Boost),然后克隆GitHub源码,修改配置文件,最后使用make命令编译安装,具体步骤需参考官方文档。

    2025年6月9日
    100
  • Linux如何查看log文件查看方法?

    在Linux中打开log文件常用命令:cat 文件名查看全文,tail -f 文件名实时追踪更新,less 文件名分页浏览,或使用文本编辑器如nano/vim,日志通常位于/var/log/目录,需sudo权限访问。

    2025年6月7日
    200
  • Linux虚拟机IP如何快速查看

    在虚拟机中查看Linux IP地址,打开终端执行命令:,1. ip addr 或 ip a(推荐),2. ifconfig(需安装net-tools),3. hostname -I(仅显示IP)

    2025年6月10日
    100
  • 如何检测Linux是否为SUSE

    要检查Linux系统是否为SUSE发行版,运行命令 lsb_release -d 或查看文件 /etc/os-release,输出中会显示SUSE相关信息。

    2025年6月11日
    000
  • 服务器安装Linux系统步骤指南

    准备安装介质(U盘或ISO镜像),通过服务器管理控制台(如iDRAC/iLO)加载镜像启动,按安装向导操作:选择语言、键盘布局、分区磁盘(常需配置RAID/LVM)、设置网络、创建用户及密码,最后安装引导程序并重启完成部署。

    2025年5月30日
    300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN