I have a development server, which is a Dell Poweredge 650, running CentOS Linux that is used for testing PostgreSQL database replication via log shipping and recently the server has been crashing after only running for a couple hours from a kernel panic. One of the things I wanted to verify is if there is a new BIOS version available but first needed to verify the current BIOS version installed. Below is information on how to determine what BIOS version a Linux server is using while the server is running.
Use dmidecode To Determine BIOS Version In Linux:
The dmidecode application is a DMI table decoder which basically provides the DMI table information in human readable format. In the output information from dmidecode you can determine what BIOS version is installed on the server which in this instance is a Dell Poweredge 650. When using the –type switch you can specify “bios” to greatly reduce the output so you can easily see the BIOS version installed on the computer.
Dell Poweredge 650 BIOS Version Output:
- [root@cent1 ~]# dmidecode --type bios
- # dmidecode 2.10
- SMBIOS 2.3 present.
- Handle 0x0000, DMI type 0, 20 bytes
- BIOS Information
- Vendor: Dell Computer Corporation
- Version: A04
- Release Date: 10/08/2003
- Address: 0xF0000
- Runtime Size: 64 kB
- ROM Size: 512 kB
- 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)
- 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
- BIOS boot specification is supported
- Function key-initiated network boot is supported
- Handle 0x0D00, DMI type 13, 22 bytes
- BIOS Language Information
- Installable Languages: 1
- Currently Installed Language: en|US|iso8859-1
- [root@cent1 ~]#
Notice there are two bios versions output including the SMBIOS and the BIOS itself. The one we are interested in here is the Dell BIOS version which in this case is A04.
Output BIOS Version Only Via Linux CLI:
If you simply want the BIOS version output you can use the below syntax with dmidecode.
- [root@cent1 ~]# dmidecode -s bios-version
You can see that this matches the BIOS version we obtained from the first command that outputs BIOS details including vendor, version, release date, and other details about the BIOS itself.