如何在 Linux 上使用 Dmidecode 命令获取硬件信息
在本文中,我们将了解如何使用Dmidecode命令检索任何 Linux 系统的硬件信息。假设我们想要升级系统,我们需要收集诸如内存、BIOS 和 CPU 等信息。借助Dmidecode命令,我们无需打开系统机箱即可了解详细信息。Dmidecode命令适用于RHEL / CentOS / Fedora / Ubuntu Linux。
Dmidecode工具读取DMI(有人称之为SMBIOS)表来获取数据,并以人类可读的格式显示有用的系统信息,如硬件详细信息、序列号和BIOS版本、处理器等。您可能需要 root 权限才能执行 dmidecode 命令。
1. Demidecode 的基本输出
以下是 Demidecode 命令示例输出。
# dmidecode 2.11 SMBIOS version fixup (2.31 -> 2.3). SMBIOS 2.3 present. 45 structures occupying 1642 bytes. Table at 0x000E0010. Handle 0x0000, DMI type 0, 20 bytes BIOS Information Vendor: Phoenix Technologies LTD Version: 6.00 Release Date: 12/06/2006 Address: 0xE78A0 Runtime Size: 100192 bytes ROM Size: 64 kB Characteristics: ISA is supported PCI is supported PC Card (PCMCIA) is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available USB legacy is supported Smart battery is supported BIOS boot specification is supported
2. 如何获取 DMI 类型
DMI Id为我们提供系统的特定硬件信息。带有选项“ -t ”或“ -type ”和“ Id ”的 Dmidecode 将为我们提供准确的信息。Id 6将为我们提供内存模块信息。
[root@example ~]# dmidecode -t 6 # dmidecode 2.11 SMBIOS version fixup (2.31 -> 2.3). SMBIOS 2.3 present. Handle 0x0009, DMI type 6, 12 bytes Memory Module Information Socket Designation: RAM socket #0 Bank Connections: 0 1 Current Speed: Unknown Type: EDO DIMM Installed Size: 1024 MB (Single-bank Connection) Enabled Size: 1024 MB (Single-bank Connection) Error Status: OK Handle 0x000A, DMI type 6, 12 bytes Memory Module Information Socket Designation: RAM socket #1 Bank Connections: 2 3 Current Speed: Unknown Type: EDO DIMM Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x000B, DMI type 6, 12 bytes Memory Module Information Socket Designation: RAM socket #2 Bank Connections: 4 5 Current Speed: Unknown Type: EDO DIMM Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK Handle 0x000C, DMI type 6, 12 bytes Memory Module Information Socket Designation: RAM socket #3 Bank Connections: 6 7 Current Speed: Unknown Type: EDO DIMM Installed Size: Not Installed Enabled Size: Not Installed Error Status: OK
以下是DMI类型的详细信息。
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
除了使用“ type_id ”,您还可以使用带有“ -t ”参数的关键字作为 dmidecode 命令。以下是可用关键字的列表。
Keyword Types ------------------------------ bios 0, 13 system 1, 12, 15, 23, 32 baseboard 2, 10 chassis 3 processor 4 memory 5, 6, 16, 17 cache 7 connector 8 slot 9
例如,要获取系统上的缓存信息,您可以执行以下命令而不是 Id 7。
[root@example ~]# dmidecode -t cache # dmidecode 2.11 SMBIOS version fixup (2.31 -> 2.3). SMBIOS 2.3 present. Handle 0x000D, DMI type 7, 19 bytes Cache Information Socket Designation: L1 Cache Configuration: Enabled, Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 16 kB Maximum Size: 16 kB Supported SRAM Types: Burst Pipeline Burst Asynchronous Installed SRAM Type: Asynchronous Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown Handle 0x000E, DMI type 7, 19 bytes Cache Information Socket Designation: L2 Cache Configuration: Enabled, Socketed, Level 2 Operational Mode: Write Back Location: External Installed Size: 0 kB Maximum Size: 512 kB Supported SRAM Types: Burst Pipeline Burst Asynchronous Installed SRAM Type: None Speed: Unknown Error Correction Type: Unknown System Type: Unknown Associativity: Unknown
3.如何获取内存信息
如何获取系统内存信息以及系统支持多少内存?以下命令显示系统最大可支持4GB RAM 。
[root@example ~]# dmidecode -t 16 # dmidecode 2.11 SMBIOS version fixup (2.31 -> 2.3). SMBIOS 2.3 present. Handle 0x001D, DMI type 16, 15 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: None Maximum Capacity: 4 GB Error Information Handle: Not Provided Number Of Devices: 4
注意:从关键字列表中可以看出内存相关信息ID为5、6、16和17。
4.如何获取 BIOS 信息?
要获取系统的BIOS信息,请运行带有“-t”选项的以下命令。
[root@example ~]# dmidecode -t bios # dmidecode 2.11 SMBIOS version fixup (2.31 -> 2.3). SMBIOS 2.3 present. Handle 0x0000, DMI type 0, 20 bytes BIOS Information Vendor: Phoenix Technologies LTD Version: 6.00 Release Date: 12/06/2006 Address: 0xE78A0 Runtime Size: 100192 bytes ROM Size: 64 kB Characteristics: ISA is supported PCI is supported PC Card (PCMCIA) is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available USB legacy is supported Smart battery is supported BIOS boot specification is supported
5.如何获取制造商、型号和序列号?
要获取有关系统制造商,型号和序列号的信息,请使用以下命令。
[root@example ~]# dmidecode -t system # dmidecode 2.11 SMBIOS 2.4 present. Handle 0x0001, DMI type 1, 27 bytes System Information Manufacturer: LENOVO Product Name: 9637C76 Version: ThinkCentre M55e Serial Number: L9BT188 UUID: 8015D37A-2F82-DC11-A3FB-8C6E4EBAD5CE Wake-up Type: AC Power Restored SKU Number: Not Specified Family: Not Specified Handle 0x000F, DMI type 12, 5 bytes System Configuration Options Option 1: Jumper settings can be described here. Handle 0x0010, DMI type 15, 29 bytes System Event Log Area Length: 432 bytes Header Start Offset: 0x0000 Header Length: 16 bytes Data Start Offset: 0x0010 Access Method: General-purpose non-volatile data functions Access Address: 0x0000 Status: Valid, Not Full Change Token: 0x0000001A Header Format: Type 1 Supported Log Type Descriptors: 3 Descriptor 1: POST error Data Format 1: POST results bitmap Descriptor 2: Single-bit ECC memory error Data Format 2: Multiple-event Descriptor 3: Multi-bit ECC memory error Data Format 3: Multiple-event Handle 0x0017, DMI type 23, 13 bytes System Reset Status: Enabled Watchdog Timer: Present Boot Option: Do Not Reboot Boot Option On Limit: Do Not Reboot Reset Count: Unknown Reset Limit: Unknown Timer Interval: Unknown Timeout: Unknown Handle 0x001F, DMI type 32, 20 bytes System Boot Information Status:
请从终端或命令提示符运行“ man dmidecode ”以了解有关 dmidecode 的更多信息。