• Dmidecode命令


    Dmidecode简介                      

    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×00022、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的作用是将DMI数据库中的信息解码,以可读的文本方式显示。由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息。

     dmidecode命令用法详解                  

     不带选项执行 dmidecode 通常会输出所有的硬件信息。Dmidecode 有个很有用的选项 -t,可以按指定类型输出相关信息,假如要获得处理器方面的信息,则可以执行

    [root@master ~]# dmidecode -t 
    dmidecode: option requires an argument -- 't'
    Type number or keyword expected
    Valid type keywords are:
      bios
      system
      baseboard
      chassis
      processor
      memory
      cache
      connector
      slot
    [root@master ~]# dmidecode -t processor
    # dmidecode 3.0
    Getting SMBIOS data from sysfs.
    SMBIOS 2.7 present.
    
    Handle 0x0004, DMI type 4, 42 bytes
    Processor Information
            Socket Designation: CPU #000
            Type: Central Processor
            Family: Unknown
            Manufacturer: GenuineIntel
            ID: A7 06 02 00 FF FB AB 0F
            Version:        Intel(R) Core(TM) i3-2348M CPU @ 2.30GHz
            Voltage: 3.3 V
            External Clock: Unknown
            Max Speed: 30000 MHz
            Current Speed: 2300 MHz
            Status: Populated, Enabled
            Upgrade: ZIF Socket
            L1 Cache Handle: 0x0094
            L2 Cache Handle: 0x0114
            L3 Cache Handle: Not Provided
            Serial Number: Not Specified
            Asset Tag: Not Specified
            Part Number: Not Specified
            Core Count: 1
            Core Enabled: 1
            Characteristics:
                    64-bit capable
                    Execute Protection
    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参数string及type列表              

    [root@master ~]# dmidecode -s
    dmidecode: option requires an argument -- 's'
    String keyword expected
    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
    [root@master ~]# dmidecode -t
    dmidecode: option requires an argument -- 't'
    Type number or keyword expected
    Valid type keywords are:
      bios
      system
      baseboard
      chassis
      processor
      memory
      cache
      connector
      slot

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

    [root@master ~]# dmidecode|grep -P -A5 "Memorys+Device"|grep Size|grep -v Range
            Size: 512 MB

    查看最大支持内存数                      

    [root@master ~]# dmidecode|grep -P 'Maximums+Capacity'
            Maximum Capacity: 3 GB

    查看槽位上内存的速率,没插就是unknown。           

    [root@master ~]# dmidecode|grep -A16 "Memory Device"|grep 'Speed'
            Speed: Unknown

    以上均是通过dmidecode命令来实现的,具体方法如下:
    dmidecode以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息。这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配
    置,比如说支持的最大内存数等。

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

    dmidecode的使用方法                        

    1. 最简单的的显示全部dmi信息:

    [root@master ~]# dmidecode 

    将输出所有的dmi信息。

    2.更精简的信息显示:

    [root@master ~]# dmidecode -q

    -q(–quite) 只显示必要的信息,这个很管用哦。

    3.显示指定类型的信息:

    通常我只想查看某类型,比如CPU,内存或者磁盘的信息而不是全部的。这可以使用-t(–type TYPE)来指定信息类型: 

    [root@master ~]# dmidecode -t bios 
    [root@master ~]# dmidecode -t bios, processor 
    Invalid type keyword: bios,
    Valid type keywords are:
      bios
      system
      baseboard
      chassis
      processor
      memory
      cache
      connector
      slot
    [root@master ~]# dmidecode -t 0, 4 

    dmidecode到底支持哪些type?

    这些可以在man dmidecode里面看到:

    文本参数支持:
    bios, system, baseboard, chassis, processor, memory, cache, connector, slot

    4. 通过关键字查看信息:

    比如只想查看序列号,可以使用:
    代码示例: 

    [root@master ~]# dmidecode -s system-serial-number 
    VMware-56 4d b7 98 f3 1e 32 51-b4 a6 90 87 1d 21 e3 49
    -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来获得当前的物理内存:

    代码示例:

    [root@master ~]# free
                  total        used        free      shared  buff/cache   available
    Mem:         483616       86392      243328        2832      153896      354896
    Swap:       1023996        1880     1022116
    [root@master ~]# grep MemTotal /proc/meminfo 
    MemTotal:         483616 kB

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

    [root@master ~]# dmidecode -t 16
    [root@master ~]# dmidecode 2.7
    [root@master ~]# dmidecode -t 17 |more
    # dmidecode 3.0
    Getting SMBIOS data from sysfs.
    SMBIOS 2.7 present.
    
    Handle 0x01A3, DMI type 17, 34 bytes
    Memory Device
            Array Handle: 0x0025
            Error Information Handle: No Error
            Total Width: 32 bits
            Data Width: 32 bits
            Size: 512 MB        #有一条512兆的内存条。
            Form Factor: DIMM
            Set: None
            Locator: RAM slot #0
            Bank Locator: RAM slot #0
            Type: DRAM
            Type Detail: EDO
            Speed: Unknown
            Manufacturer: Not Specified
            Serial Number: Not Specified
            Asset Tag: Not Specified
            Part Number: Not Specified
            Rank: Unknown
            Configured Clock Speed: Unknown
    
    Handle 0x01A4, DMI type 17, 34 bytes
    Memory Device
            Array Handle: 0x0025
            Error Information Handle: No Error
            Total Width: Unknown
            Data Width: Unknown
            Size: No Module Installed
            Form Factor: DIMM
            Set: None        #没有内存条
            Locator: RAM slot #1
            Bank Locator: RAM slot #1
            Type: DRAM
            Type Detail: Unknown
            Speed: Unknown
            Manufacturer: Not Specified
            Serial Number: Not Specified
            Asset Tag: Not Specified
            Part Number: Not Specified

    dmidecode支持的数字参数:

    ype  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
  • 相关阅读:
    day66
    1
    day65
    BeautifulSoup
    day60
    day59
    day49
    day48
    [S5PV210] PWM
    [S5PV210] Clock
  • 原文地址:https://www.cnblogs.com/liujunjun/p/11956306.html
Copyright © 2020-2023  润新知