dmidecode

Posted todo9351

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dmidecode相关的知识,希望对你有一定的参考价值。

一、什么是dmidecode

       从名称上看, 就是对DMI的解码。DMI即(Desktop Management Interface)。

      该工具就是用于解析 DMI 的表的,由于DMI表只是一堆的二进制文件,用这个工具可以解析出来,像Bios的版本信息,内存信息等。

二、命令的使用

1、命令说明

     dmidecode是一种工具,用于以人类可理解的格式转储计算机的DMI表(有些人称之为SMBIOS)内容。该表包含系统硬件组件的描述,如以及其他有用的信息,如序列号和BIOS修订。有了这张表,你可以在不需要探测实际的硬件的情况下获取这些信息。

      DMI表不仅描述了当前系统的组成,它还透露有可能的改进,比如支持的最快CPU、或者最大内存等。

     SMBIOS表示系统管理BIOS, DMI表示桌面管理界面。这两个标准都是紧密相关的,均由DMTF(桌面管理任务组)开发。

      当运行dmidecode时,会先定位DMI表。首先尝试从sysfs中读取DMI表,如果sysfs访问失败,下一步尝试直接从内存中读取。如果dmidecode成功地定位了一个有效的DMI表,然后它将解析这个表并显示如下所示的记录列表:
       Handle 0x0002, DMI type 2, 8 bytes.  Base Board Information
               Manufacturer: Intel
               Product Name: C440GX+
               Version: 727281-001
               Serial Number: INCY92700942

解释下每个记录的意思:

•Handle 0x0002。这是一个唯一的标识符,它允许记录相互引用。例如,处理器记录通常使用它们的句柄引用高速缓存内存记录。

•DMI type 2。SMBIOS规范定义了可以组成计算机的不同类型的元素。本例中,型号为2,即记录中包含“Base Board Information”。

8 bytes。每个记录都有一个4字节的头(2个是句柄,1个是类型,1个是大小),其余的由记录数据使用。这个值不考虑文本字符串(这些都位于记录的末尾),因此记录的实际长度可能(并且经常)大于显示的值。

Base Board Information。所提供的信息取决于记录的类型。在此例中,为设备的制造商,型号,版本和序列号。

2、命令选项

OPTIONS
       -d, --dev-mem FILE
              Read memory from device FILE (default: /dev/mem)

       -q, --quiet
              Be less verbose. Unknown, inactive and OEM-specific entries are not displayed. Meta-data and handle references are hidden.

       -s, --string KEYWORD
              Only  display  the  value of the DMI string identified by KEYWORD.  KEYWORD must be a keyword from the following list: bios-vendor, bios-version, bios-release-date, system-manufac‐
              turer, system-product-name, system-version, system-serial-number, system-uuid, system-family, 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-ver‐
              sion, processor-frequency.  Each keyword corresponds to a given DMI type and a given offset within this entry type.  Not all strings may be meaningful or even defined on  all  sys‐
              tems.  Some  keywords may return more than one result on some systems (e.g.  processor-version on a multi-processor system).  If KEYWORD is not provided or not valid, a list of all
              valid keywords is printed and dmidecode exits with an error.  This option cannot be used more than once.

              Note: on Linux, most of these strings can alternatively be read directly from sysfs, typically from files under /sys/devices/virtual/dmi/id.  Most of these files are even  readable
              by regular users.

       -t, --type TYPE
              Only  display  the  entries of type TYPE. TYPE can be either a DMI type number, or a comma-separated list of type numbers, or a keyword from the following list: bios, system, base‐
              board, chassis, processor, memory, cache, connector, slot. Refer to the DMI TYPES section below for details.  If this option is used more than once, the set  of  displayed  entries
              will be the union of all the given types.  If TYPE is not provided or not valid, a list of all valid keywords is printed and dmidecode exits with an error.

       -H, --handle HANDLE
              Only display the entry whose handle matches HANDLE.  HANDLE is a 16-bit integer.

       -u, --dump
              Do  not decode the entries, dump their contents as hexadecimal instead.  Note that this is still a text output, no binary data will be thrown upon you. The strings attached to each
              entry are displayed as both hexadecimal and ASCII. This option is mainly useful for debugging.

           --dump-bin FILE
              Do not decode the entries, instead dump the DMI data to a file in binary form. The generated file is suitable to pass to --from-dump later.

           --from-dump FILE
              Read the DMI data from a binary file previously generated using --dump-bin.

           --no-sysfs
              Do not attempt to read DMI data from sysfs files. This is mainly useful for debugging.

           --oem-string N
              Only display the value of the OEM string number N. The first OEM string has number 1. With special value "count", return the number of OEM strings instead.

       -h, --help
              Display usage information and exit

       -V, --version
              Display the version and exit

       Options --string, --type, --dump-bin and --oem-string determine the output format and are mutually exclusive.

       请注意,如果dmidecode运行在一个拥有新的SMBIOS规范的BIOS系统上,该工具还不支持该规范,它将在输出的最顶部打印出相关消息。因此输出数据不可靠。

3、DMI类型说明

DMI TYPES
       The SMBIOS specification defines the following DMI types:

       Type   Information
       ────────────────────────────────────────────
          0   BIOS
          1   System
          2   Baseboard
          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 Devices Extended Information
         42   Management Controller Host Interface

       Additionally,  type  126 is used for disabled entries and type 127 is an end-of-table marker. Types 128 to 255 are for OEM-specific data.  dmidecode will display these entries by default,
       but it can only decode them when the vendors have contributed documentation or code for them.

       Keywords can be used instead of type numbers with --type.  Each keyword is equivalent to a list of type numbers:

       Keyword     Types
       ──────────────────────────────
       bios        0, 13
       system      1, 12, 15, 23, 32
       baseboard   2, 10, 41
       chassis     3
       processor   4
       memory      5, 6, 16, 17
       cache       7
       connector   8
       slot        9

       Keywords are matched case-insensitively. The following command lines are equivalent:

       • dmidecode --type 0 --type 13

       • dmidecode --type 0,13

       • dmidecode --type bios

       • dmidecode --type BIOS
 

 

以上是关于dmidecode的主要内容,如果未能解决你的问题,请参考以下文章

Linux dmidecode 命令

python 获取Dmidecode 输出的系统硬件信息

Dmidecode-查询硬件信息

dmidecode常用参数

dmidecode收集系统信息

使用dmidecode在Linux下获取硬件信息