How To Get Hardware Information On Linux Using dmidecode Command

by
Share this Article: Facebook0Google+0Twitter0LinkedIn0Reddit0Pinterest0StumbleUpon0Digg

Dmidecode command reads the system DMI table to display hardware and BIOS information of the server.

 

Apart from getting current configuration of the system, you can also get information about maximum

supported configuration of the system using dmidecode. For example, dmidecode gives both the current RAM on the system and the maximum RAM supported by the system.

This article provides an overview of the dmidecode and few practical examples on how to use dmidecode command.

1. Overview of dmidecode

Distributed Management Task Force maintains the DMI specification and SMBIOS specification.

The output of the dmidecode contains several records from the DMI (Desktop Management interface) table.

Following is the record format of the dmidecode output of the DMI table.

Record Header: Handle {record id}, DMI type {dmi type id}, {record size} bytes Record Value: {multi line record value}
  • record id: Unique identifier for every record in the DMI table.
  • dmi type id: Type of the record. i.e BIOS, Memory etc.,
  • record size: Size of the record in the DMI table.
  • multi line record values: Multi line record value for that specific DMI type.

Sample output of dmidecode command:

# dmidecode | head -15  # dmidecode 2.9 SMBIOS 2.3 present. 56 structures occupying 1977 bytes. Table at 0×000FB320.  
Handle 0xDA00, DMI type 218, 11 bytes OEM-specific Type Header and Data:
DA 0B 00 DA B0 00 17 03 08 28 00  Handle 0×0000, DMI type 0, 20 bytes BIOS Information Vendor: 
Dell Computer Corporation      Version: A07         Release Date: 01/13/2004

Get the total number of records in the DMI table as shown below:

# dmidecode | grep ^Handle | wc -l 56  (or)  # dmidecode | grep structures 56 structures occupying 1977 bytes.

2. DMI Types

DMI Type id will give information about a particular hardware component of your system. Following command with

type id 4 will get the information about CPU of the system.

# dmidecode -t 4 # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×0400, DMI type 4, 35 bytes Processor Information 
Socket Designation: Processor 1         Type: Central Processor         Family: Xeon         Manufacturer: Intel         
ID: 29 0F 00 00 FF FB EB BF         Signature: Type 0, Family 15, Model 2, Stepping 9         Flags:                 
FPU (Floating-point unit on-chip)              VME (Virtual mode extension)                 DE (Debugging extension)                 
PSE (Page size extension)              TSC (Time stamp counter)                 MSR (Model specific registers)

Following are the different DMI types available.

       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

Instead of type_id, you can also pass the keyword to the -t option of the dmidecode command. Following are the available keywords.

       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

For example, to get all the system baseboard related information execute the following command, which will display the type_id 2 and 10

# dmidecode -t baseboard # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×0200, DMI type 2, 9 bytes Base Board Information         Manufacturer: Dell Computer Corporation         Product Name: 123456         Version: A05         Serial Number: ..CN123456789098.  Handle 0×0A00, DMI type 10, 14 bytes On Board Device 1 Information         Type: SCSI Controller         Status: Enabled         Description: LSI Logic 53C1030 Ultra 320 SCSI On Board Device 2 Information         Type: SCSI Controller         Status: Enabled         Description: LSI Logic 53C1030 Ultra 320 SCSI On Board Device 3 Information         Type: Video         Status: Enabled         Description: ATI Rage XL PCI Video On Board Device 4 Information         Type: Ethernet         Status: Enabled         Description: Broadcom Gigabit Ethernet 1 On Board Device 5 Information         Type: Ethernet         Status: Enabled         Description: Broadcom Gigabit Ethernet 2

3. Get Physical Memory (RAM) information using dmidecode

What is the maximum RAM supported by the system? In this example, this system can support maximum 8GB of RAM.

# dmidecode -t 16 # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×1000, DMI type 16, 15 bytes Physical Memory Array
Location: System Board Or Motherboard         Use: System Memory         Error Correction Type: Multi-bit ECC
 Maximum Capacity: 8 GB         Error Information Handle: Not Provided         Number Of Devices: 4

How much memory can I expand to? From /proc/meminfo you can find out the total current memory of your system as shown below.

# grep MemTotal /proc/meminfo MemTotal:      1034644 kB

In this example, the system has 1GB of RAM. Is this 1 x 1GB (or) 2 x 512MB (or) 4 x 256MB? This can be figured out

by passing the type id 17 to the dmidecode command as shown below. Please note in the example below, if you have

to expand upto 8GB of maximum RAM, you need to remove the existing 512MB from slot 1 and 2, and use 2GB RAM

on all the 4 memory slots.

# dmidecode -t 17 # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×1100, DMI type 17, 23 bytes Memory Device        
 Array Handle: 0×1000         Error Information Handle: Not Provided         Total Width: 72 bits         Data Width: 64 bits         
Size: 512 MB  [Note: Slot1 has 512 MB RAM]         Form Factor: DIMM         Set: 1         Locator: DIMM_1A         
Bank Locator: Not Specified         Type: DDR         Type Detail: Synchronous         Speed: 266 MHz (3.8 ns)  
Handle 0×1101, DMI type 17, 23 bytes Memory Device         Array Handle: 0×1000         Error Information Handle: Not Provided        
 Total Width: 72 bits         Data Width: 64 bits         Size: 512 MB [Note: Slot2 has 512 MB RAM]         Form Factor: DIMM         
Set: 1         Locator: DIMM_1B         Bank Locator: Not Specified         Type: DDR         Type Detail: Synchronous         
Speed: 266 MHz (3.8 ns)  Handle 0×1102, DMI type 17, 23 bytes Memory Device         Array Handle: 0×1000         
Error Information Handle: Not Provided         Total Width: 72 bits         Data Width: 64 bits         
Size: No Module Installed [Note: Slot3 is empty]         Form Factor: DIMM         Set: 2         Locator: DIMM_2A         
Bank Locator: Not Specified         Type: DDR         Type Detail: Synchronous         Speed: 266 MHz (3.8 ns)  
Handle 0×1103, DMI type 17, 23 bytes Memory Device         Array Handle: 0×1000         
Error Information Handle: Not Provided         Total Width: 72 bits         Data Width: 64 bits         
Size: No Module Installed [Note: Slot4 is empty]         Form Factor: DIMM         Set: 2         
Locator: DIMM_2B         Bank Locator: Not Specified         Type: DDR         Type Detail: Synchronous         
Speed: 266 MHz (3.8 ns)

4. Get BIOS information using dmidecode

# dmidecode -t bios # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×0000, DMI type 0, 20 bytes BIOS Information         
Vendor: Dell Computer Corporation         Version: A07         Release Date: 01/13/2004         Address: 0xF0000         
Runtime Size: 64 kB         ROM Size: 4096 kB         Characteristics:                 ISA is supported                 PCI is supported                 
PNP is supported                 BIOS is upgradeable                 BIOS shadowing is allowed                 ESCD support is available                
 Boot from CD is supported                 Selectable boot is supported                 EDD is supported                 
Japanese floppy for Toshiba 1.2 MB is supported (int 13h)                 5.25″/360 KB floppy services are supported (int 13h)                 
5.25″/1.2 MB floppy services are supported (int 13h)                 3.5″/720 KB floppy services are supported (int 13h)                 
8042 keyboard services are supported (int 9h)                 Serial services are supported (int 14h)                 
CGA/mono video services are supported (int 10h)                 ACPI is supported                 USB legacy is supported                
LS-120 boot is supported                 BIOS boot specification is supported                 Function key-initiated network boot is supported  
Handle 0×0D00, DMI type 13, 22 bytes BIOS Language Information         Installable Languages: 1                 en|US|iso8859-1         
Currently Installed Language: en|US|iso8859-1

5. View Manufacturer, Model and Serial number of the equipment using dmidecode

You can get information about the make, model and serial number of the equipment as shown below:

# dmidecode -t system # dmidecode 2.9 SMBIOS 2.3 present.  Handle 0×0100, DMI type 1, 25 bytes System Information         
Manufacturer: Dell Computer Corporation         Product Name: PowerEdge 1750         Version: Not Specified         
Serial Number: 1234567         UUID: 4123454C-4123-1123-8123-12345603431         Wake-up Type: Power Switch  
Handle 0×0C00, DMI type 12, 5 bytes System Configuration Options         Option 1: NVRAM_CLR:  Clear user settable 
NVRAM areas and set defaults         Option 2: PASSWD:  Close to enable password  Handle 0×2000, DMI type 32, 11 
bytes System Boot Information         Status: No errors detected

For questions please refer to our Q/A forum at : http://ask.unixmen.com/

Share this Article: Facebook0Google+0Twitter0LinkedIn0Reddit0Pinterest0StumbleUpon0Digg