应使用 dmidecode、lshw、/sys/firmware/dmi/tables/ 或 decode-dimms 工具:dmidecode 最权威,可查型号/频率/厂商/插槽;lshw 提供结构化视图;dmi sysfs 适用于无权限场景;decode-dimms 通过 spd 获取底层jedec参数。

如果您需要确认当前 Linux 系统中安装的物理内存条的具体型号、频率、制造商及插槽位置,则不能依赖 /proc/meminfo 或 free 等仅反映内核内存统计的命令。以下是多种可直接获取内存硬件级详细信息的方法:
一、使用 dmidecode 命令提取 SMBIOS 内存设备信息
dmidecode 通过解析 BIOS/UEFI 固件中嵌入的 SMBIOS 表,直接读取内存模块的原始硬件描述字段,是目前最权威、最完整的方案,可准确获取 Part Number、Manufacturer、Speed、Type、Locator 等关键参数。
1、以 root 权限执行完整内存设备查询:sudo dmidecode -t memory
2、筛选出已安装内存条的核心字段(排除空插槽):sudo dmidecode -t memory | grep -E "Slot:|Part Number:|Manufacturer:|Speed:|Type:|Size:" | grep -v "No Module Installed"
3、单独定位每个有效内存插槽及其对应型号与频率:sudo dmidecode -t memory | awk '/Size: [0-9]+ [MG]B$/ {slot=""; type=""; speed=""; for(i=NR;i
二、使用 lshw 命令获取结构化内存视图
lshw 从 sysfs 和内核接口采集硬件数据,输出为层级清晰的树状结构,对插槽编号、容量、时钟频率和内存类型有良好支持,适合快速识别 DDR4/DDR5 及是否启用 ECC,但部分主板可能缺失 Part Number 或 Manufacturer 字段。
1、检查是否已安装 lshw,如未安装则执行:sudo apt install lshw(Debian/Ubuntu)或 sudo yum install lshw(RHEL/CentOS)
2、列出全部内存设备并精简显示关键属性:sudo lshw -class memory | grep -A6 -B1 "description:.*memory\|slot\|size\|clock\|width"
3、提取每根内存条的插槽名、大小与标称频率(适用于多插槽系统):sudo lshw -class memory | awk '/slot:/ {s=$0} /size:/ {sz=$0} /clock:/ {c=$0; if(s && sz && c) print s, sz, c; s=""; sz=""; c=""}'
三、从 /sys/firmware/dmi/tables/ 提取原始 DMI 字符串
当无法使用 dmidecode(如权限受限且不可提权)但内核版本 ≥5.10 且 DMI sysfs 导出启用时,可绕过工具依赖,直接读取二进制 DMI 表并用 strings 提取可读字段,虽无结构化输出,但无需额外安装软件。
1、验证 DMI 表路径是否存在且可访问:ls -l /sys/firmware/dmi/tables/
2、提取包含内存标识的关键字符串行:sudo strings /sys/firmware/dmi/tables/DMI | grep -A5 -B5 "DIMM\|Slot\|Part Number\|Manufacturer\|Speed"
3、过滤出含有效内存规格的连续上下文(避免误匹配):sudo strings /sys/firmware/dmi/tables/DMI | awk '/DIMM|Slot/ {for(i=NR;i
四、使用 decode-dimms 读取 SPD EEPROM 数据
decode-dimms 通过 I²C 总线直接访问内存条上的 SPD(Serial Presence Detect)芯片,提供 JEDEC 标准定义的底层参数,包括精确的时序、厂商 ID、模块配置及实际运行频率,适用于需验证超频稳定性或兼容性的场景。
1、确认 i2c-tools 已安装:sudo apt install i2c-tools(Debian/Ubuntu)或 sudo yum install i2c-tools(RHEL/CentOS)
2、探测 I²C 适配器并启用相应总线:sudo i2cdetect -l,随后加载 i2c-dev 模块:sudo modprobe i2c-dev
3、执行 SPD 解析:sudo decode-dimms










