Dmidecode 这款软件允许你在 Linux 系统下获取有关硬件方面的信息。Dmidecode 遵循 SMBIOS/DMI 标准,其输出的信息包括 BIOS、系统、主板、处理器、内存、缓存等等。这个工具很有用。

1、DMI简介:

  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的输出格式一般如下:

—————————————-
 Handle 0×0002
 DMI type 2, 8 bytes
 Base Board Information
 Manufacturer:Intel Product Name: C440GX+
 Version: 727281-0001
 Serial Number: INCY92700942


—————————————-
其中的前三行都称为记录头(recoce Header), 其中包括了:

1、recode id(handle): DMI表中的记录标识符,这是唯一的,比如上例中的Handle 0×0002。
2、dmi type id: 记录的类型,譬如说:BIOS,Memory,上例是type 2,即”Base Board Information”
3、recode size: DMI表中对应记录的大小,上例为8 bytes.(不包括文本信息,所有实际输出的内容比这个size要更大。)
记录头之后就是记录的值:
4、decoded values: 记录值可以是多行的,比如上例显示了主板的制造商(manufacturer)、model、version以及serial Number。

2、Dmidecode的作用:

dmidecode的作用是将DMI数据库中的信息解码,以可读的文本方式显示。由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息。

3、安装Dmidecode:

Dmidecode 在主流的 Linux 发行版中都可以找到,只需通过所用发行版的包管理器安装即可,如:
 apt-get install dmidecode
 # Debian/Ubuntu yum install dmidecode
 # RHEL/CentOS/Fedora
 pacman -S dmidecode
 # Arch Linux
 emerge -av dmidecode
 # Gentoo
 或者使用官方源码包安装:
 Dmidecode源码包下载地址:http://download.savannah.gnu.org/releases/dmidecode/
 Win版本下载地址:http://gnuwin32.sourceforge.net/packages/dmidecode.htm
4、dmidecode命令用法详解:
 不带选项执行 dmidecode 通常会输出所有的硬件信息。
 Dmidecode 有个很有用的选项 -t,可以按指定类型输出相关信息,假如要获得处理器方面的信息,则可以执行
dmidecode -t processor
 输出:
 # dmidecode 2.10
 SMBIOS 2.6 present.Handle 0x0004, DMI type 4, 40 bytes
 Processor Information
 Socket Designation: CPU 1
 Type: Central Processor
 Family: Xeon
 Manufacturer: Intel
 ID: A5 06 01 00 FF FB EB BF
 Signature: Type 0, Family 6, Model 26, Stepping 5
 Flags:
 FPU (Floating-point unit on-chip)
 VME (Virtual mode extension)
 DE (Debugging extension)
 ------
Usage: dmidecode [OPTIONS]
 Options are:
 -d, --dev-mem FILE Read memory from device FILE (default: /dev/mem)
 #从设备文件读信息,输出内容与不加参数标准输出相同
 -h, --help Display this help text and exit
 #显示帮助信息
 -q, --quiet Less verbose output
 #显示更少的简化信息
 -s, --string KEYWORD Only display the value of the given DMI string
 #只显示指定DMI字符串的信息
 -t, --type TYPE Only display the entries of given type
 #只显示指定条目的信息
 -u, --dump Do not decode the entries
 #显示未解码的原始条目内容
 --dump-bin FILE Dump the DMI data to a binary file
 --from-dump FILE Read the DMI data from a binary file
 -V, --version Display the version and exit
 #显示版本信息
5、dmidecode参数string及type列表
(1)Valid string keywords are:
bios-vendor
 bios-version
 bios-release-date
 system-manufacturer
 system-product-name
 system-version
 system-serial-number
 system-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 (2)Valid type keywords are:
 bios
 system
 baseboard
 chassis
 processor
 memory
cache connector
 slot (3)type全部编码列表
 Type Information
 —————————————-
 0 BIOS
 1 System
 2 Base Board
 3 Chassis
 4 Processor
 5 Memory Controller
 6 Memory Module
 7 Cache
 8 Port Connector
 9 System Slots
 10 On Board Devices
 11 OEM Strings
 12 System Configuration Options
 13 BIOS Language
 14 Group Associations
 15 System Event Log
 16 Physical Memory Array
 17 Memory Device
 18 32-bit Memory Error
 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-bit Memory Error
 34 Management Device
 35 Management Device Component
 36 Management Device Threshold Data
 37 Memory Channel
 38 IPMI Device
 39 Power Supply
 40 Additional Information
 41 Onboard Device

6、命令用法示例:

dmidecode | grep 'Product Name'dmidecode |grep 'Serial Number'dmidecode -s system-serial-numberdmidecode -t memorydmidecode -t 11

关于 Dmidecode 的更多用法,你可以通过指定 -h 选项查询。