In Linux, there are many ways we can use to get BIOS information.
The first way is by reading the information from the /sys/class/dmi/id/
. The command is look like this:
$ sudo head /sys/class/dmi/id/bios_*
==> /sys/class/dmi/id/bios_date <==
04/17/2019
==> /sys/class/dmi/id/bios_vendor <==
American Megatrends Inc.
==> /sys/class/dmi/id/bios_version <==
UX303UA.303
The other way is using dmidecode command. dmidecode read DMI/SMBIOS and displays system informations like hardware details, serial numbers and BIOS information etc. in human readable format.
To install dmidecode use the following command:
Ubuntu:
$ sudo apt-get install dmidecode
RHEL/CentOS
$ sudo yum install dmidecode
Fedora
$ sudo dnf install dmidecode
Arch based
$ sudo pacman -S dmidecode
Example:
$ sudo dmidecode -t bios // display bios information # dmidecode 3.3 Getting SMBIOS data from sysfs. SMBIOS 3.0.0 present. Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: American Megatrends Inc. Version: UX303UA.303 Release Date: 04/17/2019 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 6016 kB Characteristics: PCI is supported BIOS is upgradeable BIOS shadowing is allowed 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) ACPI is supported USB legacy is supported Smart battery is supported BIOS boot specification is supported Targeted content distribution is supported UEFI is supported BIOS Revision: 5.11 Handle 0x0024, DMI type 13, 22 bytes BIOS Language Information Language Description Format: Long Installable Languages: 1 en|US|iso8859-1 Currently Installed Language: en|US|iso8859-1
$ sudo dmidecode -t system // display system information # dmidecode 3.3 Getting SMBIOS data from sysfs. SMBIOS 3.0.0 present. Handle 0x0001, DMI type 1, 27 bytes System Information Manufacturer: ASUSTeK COMPUTER INC. Product Name: UX303UA Version: 1.0 Serial Number: GBN0CJIRR00T44B UUID: 36fd33de-88a0-7b43-8165-a1a579014e26 Wake-up Type: Power Switch SKU Number: ASUS-NotebookSKU Family: UX Handle 0x000C, DMI type 32, 20 bytes System Boot Information Status: No errors detected
$ sudo dmidecode -t processor // display processor information
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.0.0 present.
Handle 0x0011, DMI type 4, 48 bytes
Processor Information
Socket Designation: U3E1
Type: Central Processor
Family: Core i5
Manufacturer: Intel(R) Corporation
ID: E3 06 04 00 FF FB EB BF
Signature: Type 0, Family 6, Model 78, Stepping 3
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-6200U CPU @ 2.30GHz
Voltage: 0.8 V
External Clock: 100 MHz
Max Speed: 8300 MHz
Current Speed: 2200 MHz
Status: Populated, Enabled
Upgrade: Other
L1 Cache Handle: 0x000E
L2 Cache Handle: 0x000F
L3 Cache Handle: 0x0010
Serial Number: To Be Filled By O.E.M.
Asset Tag: To Be Filled By O.E.M.
Part Number: To Be Filled By O.E.M.
Core Count: 2
Core Enabled: 2
Thread Count: 4
Characteristics:
64-bit capable
Multi-Core
Hardware Thread
Execute Protection
Enhanced Virtualization
Power/Performance Control
For another option run:
$ sudo dmidecode –help
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
-H, --handle HANDLE Only display the entry of given handle
-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
--no-sysfs Do not attempt to read DMI data from sysfs files
--oem-string N Only display the value of the given OEM string
-V, --version Display the version and exit