» 本文链接:http://www.hpiss.com/5636.html
» 订阅本站:http://www.hpiss.com/feed

dmidecode以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息。这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置,比如说支持的最大内存数等。

DMI有人也叫SMBIOS(System Management BIOS),这两个标准都由DMTF(Desktop Management Task Force)开发。

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。

dmidecode的使用方法

1. 最简单的的显示全部dmi信息:
# dmidecode
这样将输出所有的dmi信息,你可能会被一大堆的信息吓坏,通常可以使用下面的方法。

2.更精简的信息显示:
# dmidecode -q
-q(–quite) 只显示必要的信息,这个很管用哦。

3.显示指定类型的信息:
通常我只想查看某类型,比如CPU,内存或者磁盘的信息而不是全部的。这可以使用-t(–type TYPE)来指定信息类型:
# dmidecode -t bios
# dmidecode -t bios, processor (这种方式好像不可以用,必须用下面的数字的方式)
# dmidecode -t 0,4 (显示bios和processor)

dmidecode到底支持哪些type?
这些可以在man dmidecode里面看到:
文本参数支持:
bios, system, baseboard, chassis, processor, memory, cache, connector, slot
数字参数支持很多:(见附录)

4.通过关键字查看信息:
比如只想查看序列号,可以使用:
# dmidecode -s system-serial-number
-s (–string keyword)支持的keyword包括:
————————————————————————————-
bios-vendor,bios-version, bios-release-date,
system-manufacturer, system-product-name, system-version, system-serial-number,
baseboard-manu-facturer,baseboard-product-name, baseboard-version, baseboard-serial-number, baseboard-asset-tag,
chassis-manufacturer, chas-sis-version, chassis-serial-number, chassis-asset-tag,
processor-manufacturer, processor-version.
————————————————————————————-

5.示例
5.1 查看当前内存和支持的最大内存
Linux下,可以使用free或者查看meminfo来获得当前的物理内存:
# free
total used free shared buffers cached
Mem: 8182532 8010792 171740 0 148472 4737896
-/+ buffers/cache: 3124424 5058108
Swap: 4192956 3304 4189652
# grep MemTotal /proc/meminfo
MemTotal: 8182532 kB
这里显示了当前服务器的物理内存是8GB。

服务器到底能扩展到多大的内存?

#dmidecode -t 16
# dmidecode 2.7
SMBIOS 2.4 present.

Handle 0×0013, DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: 64 GB (可扩展到64GB)
Error Information Handle: Not Provided
Number Of Devices: 4

但是,事实不一定如此,因此插槽可能已经插满了。也就是我们还必须查清这里的8G到底是4*2GB, 2*4GB还是其他?
如果是4*2GB,那么尽管可以扩展到64GB,但是插槽已经插满,无法扩展了:
#dmidecode -t 17
# dmidecode 2.7
SMBIOS 2.4 present.

Handle 0×0015, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0×0013
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 2048 MB 【插槽1有1条2GB内存】
Form Factor: DIMM
Set: None
Locator: DIMM00
Bank Locator: BANK
Type: Other
Type Detail: Other
Speed: 667 MHz (1.5 ns)
Manufacturer:
Serial Number: BZACSKZ001
Asset Tag: RAM82
Part Number: MT9HTF6472FY-53EA2

Handle 0×0017, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0×0013
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 2048 MB 【插槽2有1条2GB内存】
Form Factor: DIMM
Set: None
Locator: DIMM10
Bank Locator: BANK
Type: Other
Type Detail: Other
Speed: 667 MHz (1.5 ns)
Manufacturer:
Serial Number: BZACSKZ001
Asset Tag: RAM83
Part Number: MT9HTF6472FY-53EA2

Handle 0×0019, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0×0013
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 2048 MB 【插槽3有1条2GB内存】
Form Factor: DIMM
Set: None
Locator: DIMM20
Bank Locator: BANK
Type: Other
Type Detail: Other
Speed: 667 MHz (1.5 ns)
Manufacturer:
Serial Number: BZACSKZ001
Asset Tag: RAM84
Part Number: MT9HTF6472FY-53EA2

Handle 0×001B, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0×0013
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 2048 MB 【插槽4有1条2GB内存】
Form Factor: DIMM
Set: None
Locator: DIMM30
Bank Locator: BANK
Type: Other
Type Detail: Other
Speed: 667 MHz (1.5 ns)
Manufacturer:
Serial Number: BZACSKZ001
Asset Tag: RAM85
Part Number: MT9HTF6472FY-53EA2

根据上面输出可以发现,如果要扩展,只有将上面的内存条换成16GB的,才能达到4*16GB=64GB的最大支持内存。

附录:
dmidecode支持的数字参数:
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

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

一、Dmidecode简介

DMI (Desktop Management Interface, DMI)就是帮助收集电脑系统信息的管理系统,DMI信息的收集必须在严格遵照SMBIOS规范的前提下进行。 SMBIOS(System Management BIOS)是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范。SMBIOSDMI是由行业指导机构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: 记录的类型,譬如说:BIOSMemory,上例是type 2,即“Base Board Information”
  3. recode size: DMI表中对应记录的大小,上例为8 bytes.(不包括文本信息,所有实际输出的内容比这个size要更大。)记录头之后就是记录的值
  4. decoded values: 记录值可以是多行的,比如上例显示了主板的制造商(manufacturer)modelversion以及serial Number

二、Dmidecode的作用

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

三、安装Dmidecode

Dmidecode 在主流的 Linux 发行版中都可以找到,只需通过所用发行版的包管理器安装即可,如:

apt-get install dmidecode

或者使用官方包安装:

  • Dmidecode源码包下载地址:http://download.savannah.GNU.org/releases/dmidecode/
  • Win版本下载地址:http://gnuwin32.sourceforge.net/packages/dmidecode.htm

四、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
    显示版本信息

五、dmidecode参数stringtype列表

1Valid 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

2Valid type keywords are:

  • bios
  • system
  • baseboard
  • chassis
  • processor
  • memory
  • connector
  • slot

3type全部编码列表

  • 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

六、命令用法示例

  1. 查看服务器型号:dmidecode | grep ‘Product Name’
  2. 查看主板的序列号:dmidecode |grep ‘Serial Number’
  3. 查看系统序列号:dmidecode -s system-serial-number
  4. 查看内存信息:dmidecode -t memory
  5. 查看OEM信息:dmidecode -t 11

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

» 本文链接:http://www.hpiss.com/5636.html
» 订阅本站:http://www.hpiss.com/feed

发表评论