如何通过命令提示符在Linux中检查BIOS版本或名称?

50

我想在终端上检索当前BIOS版本和名称。

有哪些命令可以找到它?

3个回答

84
BIOS版本通过SMBIOS表公开。在Linux上,我们可以使用dmidecode来访问它(需要root权限运行)。
要仅显示BIOS信息,请使用-t bios指定我们只想看到BIOS类型的条目,并使用-q来消除不必要的输出。
# dmidecode -t bios -q
BIOS Information
        Vendor: Phoenix Technologies LTD
        Version: 6.00
        Release Date: 02/22/2012
        Address: 0xE72C0
        Runtime Size: 101696 bytes
        ROM Size: 64 kB
        Characteristics:
                ISA is supported
                PCI is supported
                ...
        BIOS Revision: 4.6
        Firmware Revision: 0.0

要仅获取BIOS版本信息,请使用-s指定特定字符串:

# dmidecode -s bios-vendor
Phoenix Technologies LTD
# dmidecode -s bios-version
6.00
# dmidecode -s bios-release-date
02/22/2012

-bash: dmidecode: 命令未找到 - CuriousCase
3
尝试使用sudo yum install dmidecode或者apt-get install dmidecode进行安装。 - Jonathon Reinhart
5
这就是为什么我的提示符以#开头 - 表示我正在作为root运行。 - Jonathon Reinhart
5
那只是一个惯例。明确地这样说至少可以为很多读者节省一秒钟的时间。 :) - Nobody

32

您也可以使用 cat /sys/class/dmi/id/bios_version 命令而无需以 root 身份运行 dmidecode

/sys/class/dmi/id 目录中还包含其他有趣的文件:

  • bios_date
  • bios_vendor
  • bios_version
  • product_family
  • product_name
  • product_serial
  • product_version

可以通过以下命令快速概述它们:

head /sys/class/dmi/id/*

(我使用head,因为它会在文件内容的前几行上方打印文件名。)


5
我喜欢这个答案,因为使用它不需要安装任何东西。 - Thomas Kammeyer
你会在这种方法中遇到错误,例如“head: error reading '/sys/class/dmi/id/subsystem': Is a directory”。 - user894319twitter
没有其他主板的问题... - user894319twitter

2
您可以使用dmidecode。dmidecode支持以下操作系统。
Linux i386, x86-64, ia64
FreeBSD i386, amd64
NetBSD i386, amd64
OpenBSD i386, amd64
BeOS i386
Cygwin i386
Solaris x86
Haiku i586

http://www.nongnu.org/dmidecode/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接