dmidecode命令可以让你在Linux系统下获取有关硬件方面的信息。dmidecode的作用是将DMI​​数据库​​中的信息解码,以可读的文本方式显示。由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息。dmidecode遵循SMBIOS/DMI标准,其输出的信息包括BIOS、系统、主板、处理器、内存、缓存等等。

DMI(Desktop Management Interface,DMI)就是帮助收集电脑系统信息的管理系统,DMI信息的收集必须在严格遵照SMBIOS规范的前提下进行。SMBIOS(System Management BIOS)是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范。SMBIOS和DMI是由行业指导机构Desktop Management Task Force(DMTF)起草的开放性的技术标准,其中DMI设计适用于任何的平台和操作系统。

DMI充当了管理工具和系统层之间接口的角色。它建立了标准的可管理系统更加方便了电脑厂商和用户对系统的了解。DMI的主要组成部分是Management Information Format(MIF)数据库。这个数据库包括了所有有关电脑系统和配件的信息。通过DMI,用户可以获取序列号、电脑厂商、串口信息以及其它系统配件信息。

dmidecode命令常用格式

[root@baremetal-3-77 ~]# dmidecode [选项]
-d : (default:/dev/mem)从设备文件读取信息,输出内容与不加参数标准输出相同。
-h : 显示帮助信息。
-s : 只显示指定DMI字符串的信息。(string)
-t : 只显示指定条目的信息。(type)
-u : 显示未解码的原始条目内容。
--dump-binfile : 将DMI数据转储到一个二进制文件中。
--from-dumpFILE : 从一个二进制文件读取DMI数据。
-V : 显示版本信息。

-t 指令参数参考

[root@baremetal-3-77 ~]# dmidecode -t [选项]
Type Information
────────────────────────────────────────────
0 BIOS # 查看BIOS相关的硬件信息
1 System # 查看系统相关的硬件信息
2 Baseboard # 查看主板相关的硬件信息
3 Chassis # 查看机箱相关的硬件信息
4 Processor # 查看处理器相关的硬件信息
5 Memory Controller # 查看内存控制的相关信息
6 Memory Module # 查看内存模块的相关信息
7 Cache # 查看缓存的相关信息
8 Port Connector # 查看端口连接器的相关信息
9 System Slots # 查看系统槽的相关信息
10 Onboard Devices # 查看系统机载装置的相关信息
11 OEM Strings # 查看系统OEM配置选项的相关信息
12 System Configuration Options # 查看系统获取的SMBIOS数据的相关信息
13 BIOS Language # 查看BIOS语言的相关信息
14 Group Associations # 查看系统组织协会的相关信息
15 System Event Log # 查看系统事件日志的相关信息
16 Physical Memory Array # 查看系统物理内存数组的相关信息
17 Memory Device # 查看系统存储设备的相关信息
18 32-bitMemory Error # 查看系统32位内存错误的相关信息
19 Memory Array Mapped Address # 查看系统存储阵列映射地址的相关信息
20 Memory Device Mapped Address # 查看系统存储设备映射地址的相关信息
21 Built-in Pointing Device # 查看系统内置定位设备的相关信息
22 Portable Battery # 查看系统便携式电池的相关信息
23 System Reset # 查看系统复位的相关信息
24 Hardware Security # 查看硬件安全的相关信息
25 System Power Controls # 查看系统功率控制的相关信息
26 Voltage Probe # 查看电压探针的相关信息
27 Cooling Device # 查看系统冷却装置的相关信息
28 Temperature Probe # 查看系统温度探测器的相关信息
29 Electrical Current Probe # 查看系统电流探头的相关信息
30 Out-of-band Remote Access # 查看系统远程访问的相关信息
31 Boot Integrity Services # 查看系统引导诚信服务的相关信息
32 System Boot # 查看系统启动的相关信息
33 64-bitMemory Error # 查看系统64位内存错误的相关信息
34 Management Device # 查看系统管理设备的相关信息
35 Management Device Component # 查看系统管理设备组件的相关信息
36 Management Device Threshold Data # 管理设备阈值数据的相关信息
37 Memory Channel # 查看系统内存通道的相关信息
38 IPMI Device # 查看系统IPMI设备的相关信息
39 Power Supply # 查看系统电力供应的相关信息
40 Additional Information # 查看系统额外的信息的相关信息
41 Onboard Devices Extended Information # 查看系统机载设备扩展信息的相关信息
42 Management Controller Host Interface # 查看系统管理控制器主机接口的相关信息

-s 指令参数参考

bios-vendor  # 查看bios供应商的相关信息
bios-version # 查看bios版本的相关信息
bios-release-date # 查看bios发布日期的相关信息
system-manufacturer # 查看系统制造商的相关信息
system-product-name # 查看系统产品名称的相关信息
system-version # 查看系统版本的相关信息
system-serial-number # 查看系统串行数量的相关信息
system-uuid # 查看系统uuid的相关信息
baseboard-manufacturer # 查看系统护板制造商的相关信息
baseboard-product-name # 查看系统护板产品名称的相关信息
baseboard-version # 查看系统护板版本的相关信息
baseboard-serial-number # 查看系统护板串行数量的相关信息
baseboard-asset-tag # 查看系统护板资产标签的相关信息
chassis-manufacturer # 查看系统底盘制造商的相关信息
chassis-type # 查看系统底盘类型的相关信息
chassis-version # 查看系统底盘版本的相关信息
chassis-serial-number # 查看系统底盘串行数量的相关信息
chassis-asset-tag # 查看系统底盘资产标签的相关信息
processor-family # 查看系统处理器的相关信息
processor-manufacturer # 查看系统处理器制造商的相关信息
processor-version # 查看系统处理器版本的相关信息
processor-frequency # 查看系统处理器频率的相关信息

获取系统信息

[root@baremetal-3-77 ~]# dmidecode -t 1
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x0100, DMI type 1, 27bytes
System Information
Manufacturer: Dell Inc.
Product Name: PowerEdge R630
Version: Not Specified
Serial Number: 316RG82
UUID: 4c4c4544-0031-3610-8052-b3c04f473832
Wake-up Type: Power Switch
SKU Number: SKU=NotProvided;ModelName=PowerEdge R630
Family: Not Specified

获取主板信息

[root@baremetal-3-77 ~]# dmidecode -t 2
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x0200, DMI type 2, 8bytes
Base Board Information
Manufacturer: Dell Inc.
Product Name: 0CNCJW
Version: A08
Serial Number: .316RG82.CN747515921090.

查看cpu信息

[root@baremetal-3-77 ~]# dmidecode -t processor
----------------------------------------------------------------------------------------
也可通过/proc查询CPU个数
[root@baremetal-3-77 ~]# cat /proc/cpuinfo |grep 'physical id'|sort|uniq|wc -l
2
查询CPU核数
[root@baremetal-3-77 ~]# cat /proc/cpuinfo |grep 'core id'|wc -l
48
----------------------------------------------------------------------------------------

获取CPU ID

[root@baremetal-3-77 ~]# dmidecode -t 4 | grep ID
ID: F2 060300FF FB EB BF
ID: F2 060300FF FB EB BF

获取系统序列号

[root@baremetal-3-77 ~]# dmidecode | grep Serial

查看处理器生产厂家

[root@baremetal-3-77 ~]# dmidecode -s processor-manufacturer Intel

查询机器最大支持的内存总量

[root@baremetal-3-77 ~]# dmidecode -t 16
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x1000, DMI type 16, 23bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: 3TB
Error Information Handle: Not Provided
Number Of Devices: 24
----------------------------------------------------------------------------------------
这里可以查看到当前服务器允许扩容的最大内存大小,从以上输出可知,该机器理论上支持的最大内存为3TB
然后使用以下命令查询机器可用的内存:
[root@baremetal-3-77 ~]# grep MemTotal /proc/meminfo
MemTotal: 263743724kB
可以看到机器可用的内存为263G,也即我们可以再扩3072G-263G内存。
----------------------------------------------------------------------------------------

查看内存槽数、那个槽位插了内存,大小是多少

[root@baremetal-3-77 ~]# dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range
Size: 32GB
Size: 32GB
Size: 32GB
Size: 32GB
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: 32GB
Size: 32GB
Size: 32GB
Size: 32GB
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed

查看内存速率

[root@baremetal-3-77 ~]# dmidecode|grep -A16 "Memory Device"|grep 'Speed'
Speed: 2400MT/s
Speed: 2400MT/s
Speed: 2400MT/s
Speed: 2400MT/s
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: 2400MT/s
Speed: 2400MT/s
Speed: 2400MT/s
Speed: 2400MT/s
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown
Speed: Unknown

查看机器SN

[root@baremetal-3-77 ~]# dmidecode -t1
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x0100, DMI type 1, 27bytes
System Information
Manufacturer: Dell Inc.
Product Name: PowerEdge R630
Version: Not Specified
Serial Number: 316RG82
UUID: 4c4c4544-0031-3610-8052-b3c04f473832
Wake-up Type: Power Switch
SKU Number: SKU=NotProvided;ModelName=PowerEdge R630
Family: Not Specified

查看OEM信息

[root@baremetal-3-77 ~]# dmidecode -t 11
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x0B00, DMI type 11, 5bytes
OEM Strings
String 1: Dell System
String 2: 5[0000]
String 3: 14[1]
String 4: 17[12E6F0B842F1BF8A]
String 5: 17[26C22F9ED016B76C]
String 6: 18[0]
String 7: 19[1]
String 8: 19[1]