Chinaunix首页 | 论坛 | 博客
  • 博客访问: 393039
  • 博文数量: 89
  • 博客积分: 3176
  • 博客等级: 中校
  • 技术积分: 1205
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-15 10:08
文章分类

全部博文(89)

文章存档

2011年(17)

2010年(19)

2009年(35)

2008年(18)

分类: LINUX

2010-05-10 14:34:00

###########
#
#  原理简介
#
###########

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

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


##################
#
#  下面列几个表格
#
##################

-q 或 --quiet                        不显示太多信息,比如某条数据是从哪里读来的等等,为了得到简洁的信息,此条很有用。
-t 或 --type TYPE                 指定要显示哪方面的内容,很重要,随后介绍。
-s 或 --string KEYWORD     显示特定的关键字,下面会有介绍。
-u 或 --dump                         直接显示DMI表信息而不解码,将以16进制的文本方式显示,对普通用户意义不大。


############################
#
#   -t 或 --type后的文本参数
#
############################

bios                  bios的各项信息
system             系统信息,在我的笔记本上可以看到版本、型号、序号等信息。
baseboard     主板信息
chassis         “底板”,不太理解其含意,期待大家补充
processor     CPU的详细信息
memory             内存信息,包括目前插的内存条数及大小,支持的单条最大内存和总内存大小等等。
cache             缓存信息,似乎是CPU的缓存信息
connector     在我的电脑是PCI设备的信息
slot                 插槽信息


############################
#
#   -s 或 --string后的参数
#
############################

bios-vendor bios-version bios-release-date                                                                                                                                      bios的信息,不再翻译了
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                                                             CPU的详细信息


#####################################
#
#            使用方法
#
#####################################


###############################
#
#  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 0x0013, 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 0x0015, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x0013
    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 0x0017, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x0013
    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 0x0019, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x0013
    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 0x001B, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x0013
    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
阅读(685) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~