# How to get hardware information with dmidecode command on linux

Information TechnologyLinux

Every Linux user should know about basic configuration of Linux Hardware.There are so many tools which are currently available in the market to get hardware information in Linux. Dmidecode is a tool for dumping a computer’s DMI (Desktop Management Interface) table contents in a human-readable format. This table contains a description of the system’s hardware components as well as other useful pieces of information such as serial numbers and BIOS revision. This article describes”How to Get Hardware Information with Dmidecode Command on Linux”

## Installing Dmidecode

To install Dmidecode, use the following command –

$sudo apt-get install dmidecode The sample output should be like this – Building dependency tree Reading state information... Done The following NEW packages will be installed: dmidecode 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 45.9 kB of archives. After this operation, 196 kB of additional disk space will be used. Get:1 http://in.archive.ubuntu.com/ubuntu/ trusty/main dmidecode amd64 2.12-2 [45.9 kB] Fetched 45.9 kB in 0s (52.2 kB/s) Selecting previously unselected package dmidecode. (Reading database ... 218604 files and directories currently installed.) Preparing to unpack .../dmidecode_2.12-2_amd64.deb ... Unpacking dmidecode (2.12-2) ... Processing triggers for man-db (2.6.7.1-1ubuntu1) ... Setting up dmidecode (2.12-2) ... ................................. ## Using Dmidecode tool To use Dmidecode tool, use the following commnad- $ sudo dmidecode

The sample output should be like this –

# dmidecode 2.12
# SMBIOS entry point at 0xcbf6b498
SMBIOS 2.8 present.
45 structures occupying 2096 bytes.
Table at 0xCBD68018.
Handle 0xDA00, DMI type 218, 251 bytes
OEM-specific Type
DA FB 00 DA B2 00 0D 5F 0F 37 40 7D 00 00 00 00
00 7E 00 01 00 00 00 75 01 01 80 01 00 76 01 02
80 01 00 2D 01 03 80 01 00 2E 01 04 80 00 00 4F
02 05 80 01 00 50 02 06 80 00 00 E2 01 02 00 00
00 E1 01 02 00 01 00 E3 01 02 00 02 00 58 02 20
80 00 00 57 02 20 80 01 00 9C 00 03 00 01 00 9B
00 03 00 00 00 8A 01 04 00 01 00 89 01 04 00 00
00 7F 01 05 00 00 00 80 01 05 00 01 00 53 01 06
00 00 00 52 01 06 00 01 00 7B 01 07 00 00 00 7C
01 07 00 01 00 94 01 08 00 00 00 93 01 08 00 01
00 7D 00 09 00 00 00 2D 00 0A 00 01 00 2E 00 0A
00 00 00 6E 00 0B 00 00 00 95 00 0C 00 01 00 96
00 0C 00 00 00 2F 02 0D 00 01 00 30 02 0D 00 00
00 4B 01 0E 00 01 00 4A 01 0E 00 00 00 37 01 0F
00 00 00 38 01 0F 00 01 00 39 01 0F 00 02 00 2E
02 07 80 01 00 FF FF 00 00 00 00
........................

$dmidecode --help The sample output should be like this – 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 -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 To get more information about each device configuration, use the following command line syntax – $ sudo dmidecode -t Device name

For example, To get bios information, use the following command –

$sudo dmidecode -t bios The sample output should be like this- # dmidecode 2.12 # SMBIOS entry point at 0xcbf6b498 SMBIOS 2.8 present. Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: Dell Inc. Version: A04 Release Date: 08/05/2014 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 2048 kB Characteristics: MCA is supported PCI is supported BIOS is upgradeable BIOS shadowing is allowed ESCD support is available Boot from CD is supported Selectable boot is supported BIOS ROM is socketed EDD is supported 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 kB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported ATAPI Zip drive boot is supported BIOS boot specification is supported Targeted content distribution is supported UEFI is supported BIOS Revision: 0.4 Firmware Revision: 0.4 ............. To get system information, use the following command – $ sudo dmidecode -t memory

The sample output should be like this –

# dmidecode 2.12
# SMBIOS entry point at 0xcbf6b498
SMBIOS 2.8 present.
Handle 0x0017, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0007
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: SODIMM
Set: None
Locator: DIMM_A
Bank Locator: Bank 0
Type: DDR3
Type Detail: Synchronous
Speed: 1600 MHz
Manufacturer: Transcend
Serial Number: 000A7430
Asset Tag: 54150300
Part Number: TS1GSK64W6H
Rank: 2
Configured Clock Speed: 1600 MHz
Minimum voltage: 1.350 V
Maximum voltage: 1.500 V
Configured voltage: 1.350 V
......................................

To get processor information, use the following command –

$sudo dmidecode -t processor The sample output should be like this – # dmidecode 2.12 # SMBIOS entry point at 0xcbf6b498 SMBIOS 2.8 present. Handle 0x0024, DMI type 4, 42 bytes Processor Information Socket Designation: SOCKET 0 Type: Central Processor Family: Core i5 Manufacturer: Intel ID: 51 06 04 00 FF FB EB BF Signature: Type 0, Family 6, Model 69, Stepping 1 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) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (FXSAVE and FXSTOR instructions supported) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Multi-threading) TM (Thermal monitor supported) PBE (Pending break enabled) Version: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz ............................. To get the cache information, use the following command – $ sudo dmidecode -t cache

The sample output should be like this –

# dmidecode 2.12
# SMBIOS entry point at 0xcbf6b498
SMBIOS 2.8 present.
Handle 0x0006, DMI type 7, 19 bytes
Cache Information
Socket Designation: CPU Internal L3
Configuration: Enabled, Not Socketed, Level 3
Operational Mode: Write Back
Location: Internal
Installed Size: 3072 kB
Maximum Size: 3072 kB
Supported SRAM Types:
Unknown
Installed SRAM Type: Unknown
Speed: Unknown
Error Correction Type: Single-bit ECC
System Type: Unified
Associativity: 12-way Set-associative
...............................................

To get port connector information, use the following command –

\$ sudo dmidecode port connector

The sample output should be like this –

# dmidecode 2.12
# SMBIOS entry point at 0xcbf6b498
SMBIOS 2.8 present.
45 structures occupying 2096 bytes.
Table at 0xCBD68018.
Handle 0xDA00, DMI type 218, 251 bytes
OEM-specific Type
DA FB 00 DA B2 00 0D 5F 0F 37 40 7D 00 00 00 00
00 7E 00 01 00 00 00 75 01 01 80 01 00 76 01 02
80 01 00 2D 01 03 80 01 00 2E 01 04 80 00 00 4F
02 05 80 01 00 50 02 06 80 00 00 E2 01 02 00 00
00 E1 01 02 00 01 00 E3 01 02 00 02 00 58 02 20
80 00 00 57 02 20 80 01 00 9C 00 03 00 01 00 9B
00 03 00 00 00 8A 01 04 00 01 00 89 01 04 00 00
00 7F 01 05 00 00 00 80 01 05 00 01 00 53 01 06
00 00 00 52 01 06 00 01 00 7B 01 07 00 00 00 7C
01 07 00 01 00 94 01 08 00 00 00 93 01 08 00 01
00 7D 00 09 00 00 00 2D 00 0A 00 01 00 2E 00 0A
00 00 00 6E 00 0B 00 00 00 95 00 0C 00 01 00 96
00 0C 00 00 00 2F 02 0D 00 01 00 30 02 0D 00 00
00 4B 01 0E 00 01 00 4A 01 0E 00 00 00 37 01 0F
00 00 00 38 01 0F 00 01 00 39 01 0F 00 02 00 2E
02 07 80 01 00 FF FF 00 00 00 00
................................................

Congratulations! Now, you know “How to Get Hardware Information with Dmidecode Command on Linux”. We’ll learn more about these types of commands in our next Linux post. Keep reading!

Published on 18-Oct-2019 13:02:12