Linux dmidecode Command: Check System Hardware Details (BIOS, RAM, CPU)

SeekLinux tutorial banner illustrating Linux dmidecode command to check BIOS, memory, and hardware details
What is the Dmidecode Command?
The dmidecode stands for Desktop Management Interface Table decoder is a very handy tool for Linux administrators to retrieve detailed information about the system’s hardware components. It is used to convert the system’s DMI table into a human-readable format. 

This command is commonly used in real-world scenarios such as checking server hardware details, verifying system specifications before upgrades and troubleshooting hardware related issues without physically accessing the machine.

If you are new to the Linux, it is important to first understand the fundamentals of the operating system. Start with this beginner guide: What is Linux? An Introduction to Linux and Its Popular Distributions.

When to Use dmidecode Command?
  • Checking of BIOS version before firmware updates
  • Verifying the memory configuration and slots
  • Auditing the server hardware remotely
  • Troubleshooting hardware mismatches

Dmidecode commands

Syntax:
#sudo dmidecode [options]

Note: some Linux or UNIX system needs root permissions to run dmidecode commands. For running these commands, sudo can grant such permissions.

The dmidecode command is part of the Linux command-line utilities used by the system administrators. you are new to the Linux terminal then start with our guide on 10 Linux Basic Commands Every Beginner Should Know.

1. DMI Version
This command displays the installed version of the dmidecode on the system. It is useful when troubleshooting issues or verifying compatibility, as different versions may support different SMBIOS features and output formats.

sudo dmidecode --v
or
sudo dmidecode -V 
sudo dmidecode -V output displaying dmidecode tool version information in Linux terminal

Use Case:

  • Check version: Check version before using the advanced options
  • Check compatibility of tool with the old systems
Always clarify:

  • Tool version ≠ system info
  • This avoids confusion


2. Dmidecode Help Command
This command displays all available options and usage information for the dmidecode. It is useful when you are not familiar with the command syntax or need to know available options for retrieving specific hardware information.

sudo dmidecode --help 
dmidecode help command output showing available options and usage information in Linux

Use case:
  • When you forget command options
  • When exploring new flags
  • When learning dmidecode features

     Tip: Use this command when you're unsure about available flags as it provides quick reference directly in the terminal instead of searching manually.

     
3. Simple Dmidecode Command
This command displays complete hardware information from the system’s DMI (Desktop Management Interface) tables including details about the BIOS, system manufacturer, processor, memory and other components.

It is especially useful when you need a full overview of a system hardware for auditing, troubleshooting or verifying system specifications without physically accessing the machine.

sudo dmidecode 
Linux dmidecode command output showing detailed hardware information from DMI tables

Use case:
  •  Auditing server hardware
  • Checking system specifications remotely
  • Troubleshooting hardware-related issues
This command displays the complete output of dmidecode in a format making it easier to read large amounts of hardware information.

While more allows forward scrolling, using less is recommended because it provides better navigation, including scrolling backward and searching within the output.

 sudo dmidecode | more

sudo dmidecode piped to more displaying paginated hardware information including BIOS CPU and memory details

DMI Types
The -t or --type option allows you to filter the output of the dmidecode command and display information for a specific hardware component, such as memory, BIOS, processor, or system.

This is especially useful when you want to focus on a particular part of the hardware instead of viewing the full output which can be large and difficult to navigate.

sudo dmidecode -t <type>

or
sudo dmidecode  --typedmidecode type option output showing available DMI hardware types in Linux

Common Types

4. Dmidecode BIOS Information
This command displays detailed BIOS information from the system’s firmware including the BIOS vendor, version, release date and supported features.

It is especially useful when verifying a firmware version before updates or sorting the compatibility issues of hardware.

sudo dmidecode -t bios
or
sudo dmidecode --type biosdmidecode BIOS command output showing BIOS vendor version and release date in Linux

Use case:
  •  Checking of BIOS version before upgrade
  •  Verifying firmware details in servers
  •  Troubleshooting compatibility issues
Tip: BIOS information retrieved using dmidecode is read directly from the system firmware so it does not require internet access or additional tools.

This command displays BIOS information using the DMI type ID (type 0). It provides details such as the BIOS vendor, version and release date.

Using numeric type IDs is useful when scripting or working with systems where specific DMI types are required for automation.
sudo dmidecode -t 0
dmidecode type 0 output showing BIOS information including vendor version and release date in Linux

Use case:
  • Used in scripts for automation
  • Alternative to -t bios
  • Helpful in advanced system audits
Tip: DMI type IDs (like 0, 1, 2) correspond to specific hardware components, allowing more precise and script-friendly queries.

5. Dmidecode Board Information
This command displays detailed information about the system’s baseboard (motherboard), including the manufacturer, product name, version, and serial number.

It is useful for identifying hardware details during system audits, troubleshooting hardware issues or verifying compatibility before upgrades.

sudo dmidecode -t baseboard
or
sudo dmidecode -t 2
dmidecode type 2 output showing baseboard information including manufacturer product name and serial number in Linux

Use case:
  • Identifying motherboard model
  • Checking hardware compatibility
  • Inventory and documentation of assets
Tip: The numeric type 2 corresponds to baseboard information in the DMI table and is mostly used in scripts for automated hardware reports.

6. Dmidecode Processor Information
This command displays detailed information about the system’s processor including the model, manufacturer, speed, core count and cache details.

It particularly comes in handy when checking CPU specifications, troubleshooting performance or auditing hardware in a system without the need to access the machine physically.

Linux administrators often use the commands to inspect the system resources and running processes. Learn more about the process monitoring in our tutorial on Linux Process Management for Beginners – Complete Guide 2025.

sudo dmidecode -t processor
or
sudo dmidecode -t 4
dmidecode type 4 output showing processor information including CPU model speed cores and cache details in Linux

Use case:

  •  Checking CPU model and speed
  •  Verifying servers hardware specs
  •  Troubleshooting performance issues

Tip: The numeric type 4 corresponds to processor information in the DMI table and is used in scripts for automated hardware reports.

7. Dmidecode Memory Information
This command displays detailed information about the system’s physical memory including RAM size, type, speed and slot configuration.

sudo dmidecode -t memory
or
sudo dmidecode -t 6
dmidecode type 6 output showing memory module information including RAM type and size in Linux

Use case:
  • Checking installed RAM size
  • Identifying slots of free memory
  • Check the memory type before upgrade
  • Troubleshooting performance issues

8. Dmidecode Chassis Information
This command displays detailed information about the system chassis including the chassis type (such as desktop, laptop or server), manufacturer, version and serial number.

sudo dmidecode -t chassis
or
sudo dmidecode -t 3
dmidecode chassis command output showing system enclosure type manufacturer and serial number in Linux

Use case:
  • Identifying system type (server, laptop, desktop)
  • Inventory and documentation of Assets
  • Verifying hardware details in data centers
Tip: The chassis information in the DMI table is the numeric type 3 that is utilized in scripts to generate automated hardware reports.

9. Dmidecode System Information
This command displays system level information  including the system manufacturer, product name, version and serial number.

sudo dmidecode -t system
or
sudo dmidecode -t 1
dmidecode system command output showing system manufacturer product name version and serial number in Linux

Use case:
  • Identification of system model
  • Inventory and documentation of assets
  • Verifying remotely system details
Tip: The numeric type 1 is system information in the DMI table, which is most often used in scripts as automated hardware reporting.

10. Dmidecode Cache Information
This command displays detailed information about the system’s CPU cache including cache levels (L1, L2, and L3), size, type and configuration.

It is useful for understanding CPU performance characteristics and verifying specifications of hardware during performance tuning or system analysis.

sudo dmidecode -t cache
or
sudo dmidecode -t 7
dmidecode cache command output showing CPU cache levels L1 L2 L3 size and configuration in Linux

sudo dmidecode -t cache | grep -i size

Quickly shows cache sizes - useful in performance checks.

11. Dmidecode Connector Information
This command displays detailed information about system connectors including various hardware interfaces such as USB ports, SATA connectors and other onboard connections.

dmidecode -t connector
or
dmidecode -t 8
dmidecode connector command output showing hardware ports such as USB SATA and onboard connectors in Linux

Use case:
  • Identifying available ports (USB, SATA, etc.)
  • Checking hardware interfaces on a system
  • Troubleshooting of connectivity or hardware issues
Tip: The connector information of the DMI table is type 8 numerically, and is often utilized in advanced hardware diagnostics or scripts.

12. Dmidecode Slot Information
This command displays information about system expansion slots, including slot type, usage status and available capacity.

sudo dmidecode -t slot
or
sudo dmidecode -t 9
sudo dmidecode -t slot output displaying system slot information such as PCIe slots usage status and hardware configuration

Use case:

  • Checking available PCI/PCIe slots
  • Planning hardware upgrades (GPU, NIC, etc.)
  • Verifying slot usage in servers

Tip: Numeric type 9 is one that is used in the DMI table as system slot information and commonly in scripts to perform hardware inventory and upgrade planning.

Information using Dmidecode Keywords
String keyword is also an available option to get the information about any system component. Its syntax is

sudo dmidecode -s or sudo dmidecode --string

If only -s option is used without any DMI keyword, it shows all the available valid keywords with an error message.
dmidecode string option output showing available keywords for retrieving specific hardware information in Linux

13. Bios Vendor Check
This command displays the BIOS vendor name using --string or -s option which allows you to retrieve specific hardware information without displaying the full output of DMI.

sudo dmidecode -s bios-vendor
dmidecode string command output showing BIOS vendor information in Linux

Use case:
  • Quickly checking BIOS vendor
  • Using in scripts for automation
  • Extract the specific hardware information instead of large output
Tip: The -s option is ideal for automation because it returns clean single line output that can be easily used in scripts.

14. BIOS Release Date
This command displays the BIOS release date using --string option allowing you to retrieve this specific information without viewing the full DMI output.

sudo dmidecode -s bios-release-date
Linux dmidecode BIOS release date command output showing firmware date information

Use case:
  •  Checking how old the BIOS is
  •  Deciding whether a BIOS update is needed
  •  Verifying firmware compatibility
Tip: BIOS release date helps determine if your system firmware is outdated, which can impact on hardware compatibility and system stability.

15. Check BIOS Version 
This command displays the BIOS version using --string or -s option, which retrieves the specific hardware information without displaying the complete DMI output.

It is especially useful for verifying the current firmware version before performing BIOS update or troubleshooting compatibility issues with hardware and operating systems.

sudo dmidecode -s bios-versionLinux dmidecode BIOS version command output showing firmware version details

Use case:
  •  Checking current BIOS version
  • Check the firmware prior to upgrade
  • Troubleshooting hardware compatibility
Tip: Always check both for the BIOS version and release date together to determine either an update is required.

16. Check System Manufacturer Information
This command displays the system manufacturer using  --string option allowing you to retrieve this specific information without viewing the full DMI output.

sudo dmidecode -s system-manufacturer
sudo dmidecode -s system-manufacturer output displaying system vendor information from firmware

Use case:
  • Identifying system vendor
  • Inventory and documentation of Assets
  • Managing systems in enterprise environment
Tip: This command is mostly used in automation scripts to quickly identify system vendors across multiple servers.

17. Check System Product Name
This command displays the system product name using --string or -s option which retrieves specific hardware details without displaying the complete DMI output.

sudo dmidecode -s system-product-name
Linux dmidecode system product name command output showing hardware model details

Use case:
  • Identifying exact system model
  • Inventory and documentation of Assets
  • Remotely Verifying hardware details

Tip: Combine this with system-manufacturer to get complete system identification (vendor + model).

18. Check Processor Version
This command displays the processor version using --string or -s option which retrieves specific CPU details without displaying the complete DMI output.

It is especially useful for identifying the exact CPU model installed on a system which helps in hardware verification, performance analysis and compatibility checks.

sudo dmidecode -s processor-version
sudo dmidecode -s processor-version output displaying CPU model information from system firmware

Use case:
  • Identifying a exact CPU model
  • Verifying hardware specifications
  • Troubleshooting performance issues
Tip: This command provides a quick way to check CPU details without parsing the full dmidecode output making it ideal for automation and scripting.

19. Check Processor Manufacturer
This command displays the processor manufacturer using --string or -s option allowing you to retrieve this specific CPU detail without viewing the full DMI output.

sudo dmidecode -s processor-manufacturer
dmidecode string command output showing processor manufacturer in Linux

Use case:
  • Identifying CPU vendor (Intel / AMD)
  • Verifying hardware specifications
  • Compatibility check for software or drivers

Tip: Combine this with processor-version to get complete CPU identification (vendor + model).

20. Check Baseboard Product Name
This command displays the baseboard (motherboard) product name using --string or -s option which retrieves specific hardware details without displaying the complete DMI output.

It is especially useful for identifying the exact motherboard model which helps in hardware compatibility checks, driver support and system upgrades.

sudo dmidecode -s baseboard-product-name
dmidecode string command output showing baseboard product name in Linux

Use case:
  • Identifying motherboard model
  • Checking compatibility for upgrade
  • Finding correct drivers or firmware
Tip: Combine this with baseboard-manufacturer to get complete motherboard identification (vendor + model).

How to Hide Information in Output
To hide some information in the output of the dmidecode, you need to enable quiet mode. For this purpose, use the -q switch with the dmidecode command. For example, to display the system information, use the dmidecode command with -q --quiet switch.

sudo dmidecode -qt system
dmidecode quiet mode output showing system information with reduced details in Linux

Information as Hexadecimal
To display the information in hexadecimal and ASCII, run the dmidecode command with -u switch.

sudo dmidecode -ut memory
dmidecode hexadecimal output for memory showing raw and ASCII data of RAM information in Linux

How to dump DMI information in a File
To dump the DMI information in the file command is

sudo dmidecode --dump-bin testfile
dmidecode dump bin command output saving hardware information to a binary file in Linux

How to Retrieve DMI Data from the Binary File
To retrieve the DMI data from the test file that is created with the --dump-bin option, this command is used.

sudo dmidecode --from-dump testfile
dmidecode from dump command output reading hardware information from binary file in Linux

Multiple components Information
To retrieve the multiple components' information with one command, dmidecode is used with the grep or egrep switch. Commands can be combined with pipes and specify multiple patterns with grep.

Understanding the hardware configuration is important when configuring the Linux servers and network services. You can also learn the networking basics in our guide on Linux Basic Networking for Beginners – Complete Guide 2025.

Use grep to get Multiple Patterns
To get multiple information about the system, use grep with the dmidecode command.

sudo dmidecode -t system | grep -E ‘Manufacturer|Product Name| Serial Number’

This command will show the information about the manufacturer, product name and serial number from the system section. 
sudo dmidecode piped to grep displaying filtered system information including manufacturer product name and serial numbersrds in a single search on Linux

How to Get Memory Type
To display information about which type of memory is installed with grep command as DDR3, DDR4. Here T will be capital in -m2 Type.

sudo dmidecode -t memory | grep -m2 Type
dmidecode memory command with grep output showing RAM type such as DDR3 or DDR4 in Linux

Different types of Information
Different types of information output can be combined using grep with the dmidecode command, for example, to display the information about the system, processor and memory the command is

 (sudo dmidecode -t system; sudo dmidecode -t processor; sudo dmidecode -t memory) | grep -E 'Manufacturer|Version|Size'
Using grep with extended regular expressions to capture multiple matches in Linux

Troubleshooting dmidecode Errors
While using the dmidecode command, you might encounter some common errors. Below are their causes and fixes:

Permission denied
This error occurs when the command is executed without administrative privileges.

Fix: Run the command with sudo — for example:

sudo dmidecode -t systemTerminal screenshot showing the output of the command sudo dmidecode -t system, displaying detailed system information such as manufacturer, product name, version, and serial number on a Linux system.

SMBIOS not found
This means the system hardware doesn’t expose SMBIOS data or your platform doesn’t support DMI tables (common on some ARM-based systems or older machines).

Fix: Check if your hardware supports SMBIOS, or run the command on a different system.

dmidecode: command not found
This error appears when the dmidecode utility isn’t installed on your Linux system.

Fix: Install it using your distribution’s package manager:

For Debian/Ubuntu:

sudo apt install dmidecodeTerminal screenshot showing the sudo apt install dmidecode command used to install the Dmidecode utility on an Ubuntu or Debian-based Linux system.

For RHEL/CentOS/Fedora:

sudo yum install dmidecodeTerminal screenshot showing the sudo dnf install dmidecode command used to install the Dmidecode package on a Fedora, RHEL, or CentOS Linux system.

Empty or Incomplete Output in Virtual Machines
In some virtualized environments, DMI information is partially hidden for security reasons.

Fix: Some hypervisors, such as VMware or KVM, may mask SMBIOS data. You can check the VM settings or try running the command on a physical host for complete details.

Once your server hardware and configuration are verified, securing the remote access is an important step. Follow our guide on How to Secure SSH Access on Linux.

Practical Use Cases for dmidecode

·         Asset inventory automation
·         Firmware audit before BIOS update
·         Server documentation
·         Troubleshooting hardware mismatches

Frequently Asked Questions (FAQs)

1. What is dmidecode used for in Linux?
The `dmidecode` command is used to display hardware information directly from the system’s DMI (Desktop Management Interface) tables. It provides details such as BIOS version, motherboard model, processor type, memory slots, and system serial numbers without requiring physical access to the hardware.

2. Can dmidecode run without root privileges?
No, most systems require administrative privileges to access the DMI tables. You should use `sudo` with dmidecode to retrieve complete hardware details.

3. Why does dmidecode show “permission denied”?
This error occurs when you try to execute dmidecode without `sudo` or root access. Simply prefix the command with `sudo` and enter your password to resolve the issue.

4. Is it safe to run dmidecode on production systems?
Yes, dmidecode is a read-only command that doesn’t modify system data or hardware configurations. It’s completely safe to use even on production servers for hardware inventory and diagnostics.


 Final Thoughts

In real world environments dmidecode is an essential tool for system administrators to retrieve hardware information without physical access. It helps in auditing systems, verifying configurations, and troubleshooting hardware-related issues efficiently.

Mastering this command allows you to manage Linux systems more confidently and make informed decisions during upgrades, maintenance and diagnostics.

If you found this guide helpful, don't forget to share and subscribe SeekLinux for more updates and Linux administration tips.


SeekLinux Author
SeekLinux Team
Linux Engineers | DevOps | Security Enthusiasts

SeekLinux Team shares practical Linux tutorials, SSL/TLS certificate guides, commands and DevOps solutions. Our goal is to simplify system administration and help you master real-world server and security tasks.

Learn more about us →

Post a Comment

Previous Post Next Post