Linux系统内存大小查看方法与命令详解
在 Linux 系统中,MemTotal 是判断物理内存总容量最可靠的依据,单位为 KB,可直接通过 proc meminfo 读取;free -h 展示的是内核当前实际识别并管理的总内存;dmidecode 则用于查看硬件标称容量,但需要 sudo 权限,且不代表这些内存一定已被内核启用。想查看
在 Linux 系统中,MemTotal 是判断物理内存总容量最可靠的依据,单位为 KB,可直接通过 /proc/meminfo 读取;free -h 展示的是内核当前实际识别并管理的总内存;dmidecode 则用于查看硬件标称容量,但需要 sudo 权限,且不代表这些内存一定已被内核启用。

想查看 Linux 内存大小,最直接的方法就是看 MemTotal 字段。它表示系统物理内存总容量,单位是 KB,比其他查询方式更准确、更值得参考。
用 free -h 快速查看 Linux 总内存
这是查看 Linux 内存信息时最常见、也最方便的命令:
- 执行
free -h后,第一行Mem:后面的total数值,就是当前系统可识别的物理内存总量(已扣除内核保留及部分不可用区域) - 需要注意的是:
free显示的是内核实际识别并可管理的内存,因此与 BIOS/UEFI 中看到的插槽总容量可能存在细微差别,例如部分内存被显卡或其他硬件预留 - 如果
total明显小于内存条标称容量,例如安装了 32GB 但系统只显示 31.2GiB,通常说明有一部分内存被 GPU 或集成显卡占用,此时可以通过dmesg | grep -i memory查看启动日志中的内存保留记录
从 /proc/meminfo 获取原始内存数据
几乎所有 Linux 内存查看工具底层都依赖这个文件,因此它通常被视为最权威的来源:
- 运行
grep MemTotal /proc/meminfo,会得到类似MemTotal: 32857904 kB的输出 - 这个数值表示内核启动时探测并确认可用的物理内存上限,没有经过额外的界面换算或展示层处理
- 如果想把结果换算成 GB,可以直接除以 1024²,例如:
awk '/MemTotal/ {printf "%.1f GBn", $2/1024/1024}' /proc/meminfo - 不要把
cat /proc/meminfo输出中的其他字段误认为总内存,例如MemA vailable反映的是可用内存情况,并不等于内存总大小
用 dmidecode 查看内存插槽和硬件容量
如果你想确认内存条是否插好、插槽是否识别正常,或者排查硬件层面的容量问题,可以通过 SMBIOS 查询:
- 执行
sudo dmidecode -t memory | grep -E "Size|Speed|Type" - 每一条
Size:信息通常代表一个内存插槽的容量,若显示Size: No Module Present,则表示该插槽为空 - 需要注意:普通用户通常没有权限直接运行
dmidecode,必须使用sudo;在部分云服务器或容器环境中,该命令也可能无法使用,因为无法访问底层固件信息 - 该命令显示的是内存条或 DIMM 的标称容量,并不能说明内核是否已经完全启用这些内存;例如安装了 ECC 内存但 BIOS 中关闭了相关功能,
dmidecode依然会显示容量,而/proc/meminfo中的总量可能略少
有一个细节在查看 Linux 内存大小时非常容易被忽略:内存总量并不等于“机器里一共插了多少内存条”,而是“内核最终成功识别了多少内存”。因此,/proc/meminfo 中的 MemTotal 才是最值得信赖的判断标准,其他结果本质上都只是基于它的进一步展示或换算。如果 free -h 和 dmidecode 的数据不一致,应优先参考前者;如果连 MemTotal 都明显偏小,比如远低于硬件标称规格,那么问题通常出在 BIOS 设置、内核启动参数(例如 mem= 限制)或硬件兼容性方面。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Linux文件权限修改方法与chmod命令使用教程
{ "position ":0, "title ": "简介 ", "layout ": "doc-fullscreen ", "text ": " 简介 n n本教程将带你系统了解 Linux 文件权限的基础概念,学习如何使用 `chmod` 命令修改文件权限,并掌握在 Linux 环境中进行权限管理的常见最佳实践。熟
Linux系统内存大小查看方法与命令详解
在 Linux 系统中,MemTotal 是判断物理内存总容量最可靠的依据,单位为 KB,可直接通过 proc meminfo 读取;free -h 展示的是内核当前实际识别并管理的总内存;dmidecode 则用于查看硬件标称容量,但需要 sudo 权限,且不代表这些内存一定已被内核启用。想查看
CentOS 7修改最大接收队列的方法与配置教程
net core netdev_max_backlog 是 Linux 内核在软中断处理之前用于缓存网络接收数据包的队列长度。当网卡收包速度超过协议栈处理能力时,尚未及时处理的数据包会先暂存在这里。它并不是网卡硬件的 ring buffer,也不是 TCP 连接队列。该参数默认值通常为 1000,一
Linux查看文件编码格式的常用方法
结论其实已经很清楚:file -i 最多只能用于初步判断文件编码,真正想更稳妥地确认,通常还是要看 enca -L zh(适合中文文本)或者直接通过 iconv -f XXX -t UTF-8 手动试错验证;至于 :set fileencoding,它显示的是 Vim 根据当前内容推测出的编码,并不
CentOS 7查看系统引导程序具体版本的方法
在 CentOS 7 中,查看 GRUB2 实际安装版本,建议执行 grub2-editenv --version 或 grub2-mkconfig --version,通常会输出类似 2 02-102 el7 的版本字符串;如果想更准确确认已安装的引导程序包版本,推荐使用 rpm -q grub2
- 热门数据榜
相关攻略
2026-08-16 17:10
2026-08-16 17:10
2026-08-16 17:09
2026-08-16 16:38
2026-08-16 16:38
2026-08-16 16:37
2026-08-16 16:05
2026-08-16 16:05
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

