Linux如何查看具体的内存条颗粒信息

梦杰同学_6350

梦杰同学_6350

2026-08-08

1109人浏览

原创

dmidecode -t memory 是唯一能稳定读取原始 spd 数据的命令,提供 part number 等颗粒级溯源关键字段;manufacturer 和 speed 字段需结合 handle 分组提取并过滤空插槽,且 part number 需查厂商文档反推具体颗粒型号。

linux如何查看具体的内存条颗粒信息

dmidecode -t memory 是唯一能拿到颗粒级信息的命令

Linux 下想看到内存条的颗粒(如单颗芯片型号、位宽、厂商代号),必须走 SMBIOS/DMI 表这条路——dmidecode -t memory 是目前唯一能稳定读取原始 SPD 数据的工具。其他命令如 lshw、/proc/meminfo 或 lsmem 都不接触 SPD,自然看不到颗粒细节。

注意:颗粒信息(比如 Micron MT40A512M16JE-083E 或 Samsung K4AAG085WB-BCTD)一般不会直接出现在 dmidecode 输出里。它只提供 Part Number(如 M378A2K43CB1-CTD),而这个编码需查厂商公开文档才能反推出颗粒型号。但 Part Number 本身已是颗粒级溯源的关键入口。

  • Part Number 字段(Part Number:)是识别颗粒的起点,不同厂商命名规则不同:三星以 M 开头,海力士以 HMA 开头,镁光常用 MT 开头
  • Manufacturer 字段(Manufacturer:)若显示为 0x0000 或 NO DIMM,说明 BIOS 没写入或 SPD 数据损坏,不能据此判断颗粒真伪
  • Type 字段(Type:)和 Speed 字段(Speed:)共同约束颗粒规格:例如 DDR4-3200 对应 MT/s 值,实际颗粒标称频率需匹配

为什么 grep Speed: 总是漏掉或错配

dmidecode -t memory 的输出不是扁平结构,每个内存条对应一个 Handle 块,而 Speed: 和 Part Number: 可能分属不同子 Handle(比如主 Handle 描述插槽,子 Handle 描述 SPD 数据)。直接 grep Speed: 容易把 A 槽的 Part Number 和 B 槽的 Speed 拼在一起,结果完全不可信。

  • 先用 sudo dmidecode -t memory | grep -A2 -B2 "Size: [0-9]\+ GB" 确认哪些插槽真有内存
  • 再用 awk 按 Handle 切分处理,确保 Slot:、Size:、Part Number:、Speed: 四者来自同一物理条
  • 空插槽(Size: No Module Installed)会带出残缺字段,必须过滤,否则干扰判断

decode-dimms 能读 SPD 芯片但依赖 I2C 总线可用性

如果主板 BIOS 支持且 I2C 总线驱动已加载,decode-dimms(来自 i2c-tools 包)可直接读取内存条 SPD EEPROM,理论上比 dmidecode 更接近颗粒原始数据。但它不是万能的:

Browser Setup (No-Root Linux)
Browser Setup (No-Root Linux)

在无 root/sudo 权限的环境(云容器、VPS、隔离主机)中安装并配置 OpenClaw 浏览器工具的 headless Chrome。适用场景:...

下载
  • 需要启用内核配置 CONFIG_I2C_DESIGNWARE_PLATFORM=y,很多云主机或精简系统默认关闭
  • 执行前得先探测 I2C 适配器:sudo i2cdetect -l,没输出就说明硬件不支持或驱动未加载
  • 即使探测到适配器,sudo decode-dimms 也可能报错 No SMBus driver installed,此时要装 linux-modules-extra 或手动 modprobe
  • 部分 DDR5 内存条使用 SMBus 3.0 或 DMI 3.0 协议,老版本 decode-dimms 不识别,会返回空或乱码

别指望 /sys/firmware/dmi/tables/ 提取颗粒编码

虽然 sudo strings /sys/firmware/dmi/tables/DMI | grep -i "part\|manufacturer" 看起来免装工具,但它输出的是原始二进制字符串流,没有字段边界。Part Number 很可能被截断、拼接错误,或者根本没写进 DMI 表——尤其国产 BIOS 或笔记本固件常省略 SPD 数据。

更关键的是:颗粒信息(如芯片丝印)压根不在 DMI 规范定义字段里,它只存在于 SPD EEPROM 的特定地址(如 DDR4 SPD offset 0x40~0x7F),而 /sys/firmware/dmi/tables/ 只导出 SMBIOS 表,不包含 SPD 原始字节。想靠它反推颗粒型号,成功率极低。

真正要确认颗粒,得结合 dmidecode 拿到 Part Number,再查厂商官网 datasheet 或用第三方数据库(如 Crucial Scanner、Kingston Finder)交叉验证——这一步没法自动化,必须人工介入。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3890

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3333

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2473

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5990

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5642

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3313

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2805

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3039

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

277

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习