上一篇
Linux内存大小怎样查?
- Linux
- 2025-06-11
- 2763
在Linux系统中,通过运行命令
free -h
可查看内存大小,该命令显示总内存、已用内存和空闲内存等信息,单位以GB或MB等人类可读格式呈现。
一、通过 free
命令(推荐)
适用场景:快速查看内存总量及使用情况(最常用)。
原理:直接从 /proc/meminfo
读取数据,轻量高效。
操作步骤:
free -h
输出示例:
total used free shared buff/cache available
Mem: 7.7G 2.1G 3.2G 123M 2.4G 5.2G
Swap: 2.0G 0B 2.0G
- 关键字段:
total
:物理内存总量(示例中为 7.7GB)。available
:系统可用内存(含缓存和缓冲区可回收部分)。
- 参数说明:
-h
:自动转换单位为 GB/MB(Human-readable)。-g
:以 GB 为单位显示(free -g
)。
二、通过 /proc/meminfo
文件
适用场景:获取详细内存参数(如 Buffers/Cached/Swap)。
原理:内核实时生成的虚拟文件,记录最原始的内存数据。
操作步骤:
cat /proc/meminfo | grep MemTotal
输出示例:
MemTotal: 8072772 kB # 内存总量 = 8072772 KB ≈ 7.7 GB
- 其他有用字段:
MemFree
:未使用的物理内存。SwapTotal
:交换分区总量。
️ 三、通过 dmidecode
(需 root 权限)
适用场景:查看硬件物理内存配置(如插槽数量、频率)。
原理:读取 DMI(硬件固件)信息,显示物理内存条详情。
操作步骤:
sudo dmidecode -t memory | grep -A5 "Memory Device"
输出示例:
Memory Device
Size: 4096 MB # 单条内存大小
Type: DDR4
Speed: 2666 MT/s
- 参数说明:
-t memory
:仅输出内存相关数据。- 注意:需 root 权限,适用于物理服务器。
四、通过 top
或 htop
命令
适用场景:实时监控内存使用趋势(含进程级视图)。
操作步骤:
top # 启动后按 `Shift+M` 按内存排序 或 htop # 更友好的交互式界面(需安装:`sudo apt install htop`)
输出关键行(top 示例):
MiB Mem : 7880.8 total, 3271.5 free, ... # 总内存 7880.8 MB ≈ 7.7 GB
🧩 五、通过 lshw
命令(需安装)
适用场景:整合硬件信息(包括内存型号和容量)。
操作步骤:
sudo lshw -short -C memory
输出示例:
/0/0 memory 16GiB System Memory # 总内存 16GB
/0/0/0 memory 8GiB DDR4 SODIMM # 单条 8GB
️ 六、图形化界面(GUI 用户)
- GNOME 桌面:
打开「系统监视器」→「资源」选项卡 → 查看「内存」图表。 - KDE Plasma:
使用「KSysGuard」工具 → 查看「物理内存」总量。
解读建议
- 物理内存 vs 可用内存:
Linux 会利用空闲内存缓存文件(buff/cache
),当应用需要时自动释放,available
比free
更反映真实可用资源。 - Swap 的影响:
若 Swap 使用率持续过高,说明物理内存不足,需升级配置。 - 选择工具优先级:
- 快速检查 →
free -h
- 硬件详情 →
dmidecode
- 实时监控 →
htop
- 快速检查 →
专业提示:生产环境中建议结合
free
和/proc/meminfo
验证数据一致性,避免单命令误差。
引用说明:
本文方法基于 Linux 内核文档(proc(5) manpage)、dmidecode 官方手册及 GNU Coreutils 规范,确保信息的准确性和可复现性,所有命令已在 Ubuntu/CentOS 主流发行版测试通过。