在Linux系統下,想要查看系統的硬件信息就可以使用dmidecode命令,在Windows中可以使用“DMIScope”軟件(收費軟件,筆者未使用過)來查看和修改BIOS。
一、dmidecode簡介
midecode允許你在Linux系統下獲取有關硬件方面的信息。dmidecode遵循SMBIOS/DMI標準,其輸出的信息包括BIOS、系統、主板、處理器、內存、緩存等等。
DMI(Desktop Management Interface,DMI)就是幫助收集電腦系統信息的管理系統,DMI信息的收集必須在嚴格遵照SMBIOS規範的前提下進行。SMBIOS(System Management BIOS)是主板或系統製造者以標準格式顯示產品管理信息所需遵循的統一規範。SMBIOS和DMI是由行業指導機構Desktop Management Task Force(DMTF)起草的開放性的技術標準,其中DMI設計適用於任何的平臺和操作系統。
DMI充當了管理工具和系統層之間接口的角色。它建立了標準的可管理系統更加方便了電腦廠商和用戶對系統的瞭解。DMI的主要組成部分是Management Information Format(MIF)數據庫。這個數據庫包括了所有有關電腦系統和配件的信息。通過DMI,用戶可以獲取序列號、電腦廠商、串口信息以及其它系統配件信息。
二、dmidecode的作用
dmidecode的作用是將DMI數據庫中的信息解碼,以可讀的文本方式顯示。由於DMI信息可以人爲修改,因此裏面的信息不一定是系統準確的信息。
三、dmidecode命令用法
不帶選項執行dmidecode通常會輸出所有的硬件信息。dmidecode有個很有用的選項-t,可以指定類型輸出相關信息。假如要獲得處理器方面的信息,則可以執行:```
dmidecode -t processor
Usage: dmidecode [OPTIONS]
Options are:
-d:(default:/dev/mem)從設備文件讀取信息,輸出內容與不加參數標準輸出相同。
-h:顯示幫助信息。
-s:只顯示指定DMI字符串的信息。(string)
-t:只顯示指定條目的信息。(type)
-u:顯示未解碼的原始條目內容。
-- dump-bin FILE: Dump the DMI data to a binary file.
-- from-dump FILE: Read the DMI data from a binary file.
-V:顯示版本信息
dmidecode的輸出格式一般如下:
Handle 0x0002, DMI type 2, 95 bytes.
Base Board Information
Manufacturer: IBM
Product Name: Node1 Processor Card
Version: Not Specified
Serial Number: Not Specified
其中記錄頭(recode header)包括了:
recode id(Handle):DMI表中的記錄標識符,這是唯一的,比如上例中的Handle 0x0002.
DMI type id:記錄的類型,譬如說:BIOS,Memory,上例是type 2,即“Base Board Information”.
recode size:DMI表中對應記錄的大小,上例爲95 bytes。(不包括文本信息,所有實際輸出的內容比這個size要更大)。記錄頭之後就是記錄的值。
recoded values:記錄值可以是多行的,比如上例顯示了主板的製造商(Manufacturer)、Product Name、Version以及Serial Number。
1. 最簡單的的顯示全部dmi信息:
[root@BAIYU_180 ~]# dmidecode
[root@BAIYU_180 ~]# dmidecode|wc -l
6042
這樣將輸出所有的dmi信息,你可能會被一大堆的信息嚇壞,通常可以使用下面的方法。
2.顯示指定類型的信息:
通常我只想查看某類型,比如CPU,內存或者磁盤的信息而不是全部的。這可以使用-t(–type TYPE)來指定信息類型:
# dmidecode -t bios
# dmidecode -t bios, processor (這種方式好像不可以用,必須用下面的數字的方式)
# dmidecode -t 0,4 (顯示bios和processor)
dmidecode到底支持哪些type?
這些可以在man dmidecode裏面看到:
文本參數支持:
bios, system, baseboard, chassis, processor, memory, cache, connector, slot
數字參數支持很多:(見附錄)
4.通過關鍵字查看信息:
比如只想查看序列號,可以使用:
# dmidecode -s system-serial-number
-s (–string keyword)支持的keyword包括:
bios-vendor,bios-version,bios-release-date,
system-manufacturer,system-product-name,system-version,system-serial-number,
baseboard-manu-facturer,baseboard-product-name,baseboard-version,baseboard-serial-number,baseboard-asset-tag,
chassis-manufacturer,chas-sis-version,chassis-serial-number,chassis-asset-tag,
processor-manufacturer,processor-version.
附錄:
SMBIOS specification 2.7.1 中定義瞭如下的結構類型:
Type | Description |
---|---|
0 | BIOS Information |
1 | System Information |
2 | Baseboard (or Module) Information |
3 | System Enclosure or Chassis |
4 | Processor Information |
5 | Memory Controller Information (Obsolete) |
6 | Memory Module Information (Obsolete) |
7 | Cache Information |
8 | Port Connector Information |
9 | System Slots |
10 | On Board Devices Information |
11 | OEM Strings |
12 | System Configuration Options |
13 | BIOS Language Information |
14 | Group Associations |
15 | System Event Log |
16 | Physical Memory Array |
17 | Memory Device |
18 | 32-Bit Memory Error Information |
19 | Memory Array Mapped Address |
20 | Memory Device Mapped Address |
21 | Built-in Pointing Device |
22 | Portable Battery |
23 | System Reset |
24 | Hardware Security |
25 | System Power Controls |
26 | Voltage Probe |
27 | Cooling Device |
28 | Temperature Probe |
29 | Electrical Current Probe |
30 | Out-of-Band Remote Access |
31 | Boot Integrity Services (BIS) Entry Point |
32 | System Boot Information |
33 | 64-Bit Memory Error Information |
34 | Management Device |
35 | Management Device Component |
36 | Management Device Threshold Data |
37 | Memory Channel |
38 | IPMI Device Information |
39 | System Power Supply |
40 | Additional Information |
41 | Onboard Devices Extended Information |
42 | Management Controller Host Interface |
126 | Inactive |
127 | End-of-Table |
128-255 | Available for system- and OEM- specific information |
參考:
https://www.linuxidc.com/Linux/2015-12/126814.htm