天天看點

伺服器硬體資訊檢視之dmidecode

伺服器硬體資訊檢視之dmidecode:

http://www.laozuo.org/6682.html

dmidecode在 Linux 系統下擷取有關硬體方面的資訊。dmidecode 遵循 SMBIOS/DMI 标準,以一種可讀的方式dump出機器的DMI(Desktop Management Interface)資訊, 其輸出的資訊包括 BIOS、系統、主機闆、處理器、記憶體、緩存等等, 既可以得到目前的配置,也可以得到系統支援的最大配置,比如說支援的最大記憶體數等。

不同系統安裝dmidecode方式:

aptitude install dmidecode # Debian/Ubuntu

yum install dmidecode # Fedora,redhat

pacman -S dmidecode # Arch Linux

emerge -av dmidecode # Gentoo

系統centos6.8

yum -y install dmidecode

1.檢視記憶體槽數、那個槽位插了記憶體,大小是多少:

[root@localhost ~]# dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range

Size: 16384 MB

Size: No Module Installed

2、檢視最大支援記憶體數

[root@localhost ~]# dmidecode|grep -P 'Maximum\s+Capacity'

Maximum Capacity: 3 TB

[root@localhost ~]#

3、檢視槽位上記憶體的速率,沒插就是unknown。

[root@localhost ~]# dmidecode|grep -A16 "Memory Device"|grep 'Speed'

Speed: 2133 MHz

Speed: Unknown

4.檢視CPU資訊

dmidecode -t 4

dmidecode的輸出格式一般如下:

Handle 0×0002

DMI type 2, 8 bytes

Base Board Information

Manufacturer:Intel

Product Name: C440GX+

Version: 727281-0001

Serial Number: INCY92700942

其中的前三行都稱為記錄頭(recoce Header), 其中包括了:

1、recode id(handle): DMI表中的記錄辨別符,這是唯一的,比如上例中的Handle 0×0002。

2、dmi type id: 記錄的類型,譬如說:BIOS,Memory,上例是type 2,即”Base Board Information”

3、recode size: DMI表中對應記錄的大小,上例為8 bytes.(不包括文本資訊,所有實際輸出的内容比這個size要更大。)

記錄頭之後就是記錄的值:

4、decoded values: 記錄值可以是多行的,比如上例顯示了主機闆的制造商(manufacturer)、model、version以及serial Number。

dmidecode的使用方法

1. 最簡單的的顯示全部dmi資訊:

# dmidecode

1

這樣将輸出所有的dmi資訊,你可能會被一大堆的資訊吓壞,通常可以使用下面的方法。

2.更精簡的資訊顯示:

# dmidecode -q

-q(–quite) 隻顯示必要的資訊,這個很管用哦。

3.顯示指定類型的資訊:

通常我隻想檢視某類型,比如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.通過關鍵字檢視資訊:

比如隻想檢視序列号,可以使用:

[root@localhost ~]# dmidecode -s system-serial-number

JVJBRH2

5.示例

5.1 檢視目前記憶體和支援的最大記憶體

Linux下,可以使用free或者檢視meminfo來獲得目前的實體記憶體:

# free

total used free shared buffers cached

Mem: 8182532 8010792 171740 0 148472 4737896

-/+ buffers/cache: 3124424 5058108

Swap: 4192956 3304 4189652

# grep MemTotal /proc/meminfo

MemTotal: 8182532 kB

這裡顯示了目前伺服器的實體記憶體是8GB。

伺服器到底能擴充到多大的記憶體?

#dmidecode -t 16

# dmidecode 2.7

SMBIOS 2.4 present.

Handle 0×0013, DMI type 16, 15 bytes.

Physical Memory Array

Location: System Board Or Motherboard

Use: System Memory

Error Correction Type: Multi-bit ECC

Maximum Capacity: 64 GB (可擴充到64GB)

Error Information Handle: Not Provided

Number Of Devices: 4

但是,事實不一定如此,是以插槽可能已經插滿了。也就是我們還必須查清這裡的8G到底是4*2GB, 2*4GB還是其他?

如果是4*2GB,那麼盡管可以擴充到64GB,但是插槽已經插滿,無法擴充了:

檢視記憶體條數:

#dmidecode -t 17

Handle 0×0015, DMI type 17, 27 bytes.

Memory Device

Array Handle: 0×0013

Total Width: 72 bits

Data Width: 64 bits

Size: 2048 MB 【插槽1有1條2GB記憶體】

Form Factor: DIMM

Set: None

Locator: DIMM00

Bank Locator: BANK

Type: Other

Type Detail: Other

Speed: 667 MHz (1.5 ns)

Manufacturer:

Serial Number: BZACSKZ001

Asset Tag: RAM82

Part Number: MT9HTF6472FY-53EA2

Handle 0×0017, DMI type 17, 27 bytes.

Size: 2048 MB 【插槽2有1條2GB記憶體】

Locator: DIMM10

Asset Tag: RAM83

Handle 0×0019, DMI type 17, 27 bytes.

Size: 2048 MB 【插槽3有1條2GB記憶體】

Locator: DIMM20

Asset Tag: RAM84

Handle 0x001B, DMI type 17, 27 bytes.

Size: 2048 MB 【插槽4有1條2GB記憶體】

Locator: DIMM30

Asset Tag: RAM85

根據上面輸出可以發現,如果要擴充,隻有将上面的記憶體條換成16GB的,才能達到4*16GB=64GB的最大支援記憶體。

 本文轉自 wjw555 51CTO部落格,原文連結:http://blog.51cto.com/wujianwei/1973178

繼續閱讀