dmidecode详解

 

基础命令学习目录html

 

https://blog.csdn.net/jerry_1126/article/details/51182566linux

跟硬件相关的命令有uname, lspci,/proc目录下的文件等,有时候Linux/Unix系统下获取有关硬件方面的信息,这个时候,就要用到dmidecode, 使用该命令能够查询BIOS、系统、主板、处理器、内存、缓存等很是重要信息。下面是其经常使用的几个命令:ios

# dmidecode | grep 'Product Name'                           // 查看服务器型号
# dmidecode | grep 'Serial Number'                         // 查看主板的序列号
# dmidecode -s system-serial-number                        // 查看系统序列号
# dmidecode -t memory                                          // 查看内存信息
# dmidecode -t 11                                               // 查看OEM信息
# dmidecode | grep -A16 "Memory Device" | grep "Size" |sed 's/^[ \t]*//'  // 现有内存数量和内存大小
# dmidecode | grep "Maximum Capacity" |sed  "s/^[ \t]*//"                     // 最大支持内存容量:


备注:
-t  只显示指定条目的信息
-s  只显示指定DMI字符串关键字的信息shell

DMI (Desktop Management Interface)数据库

 

dmidecode在 Linux 系统下获取有关硬件方面的信息。dmidecode 遵循 SMBIOS/DMI 标准,以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息, 其输出的信息包括 BIOS、系统、主板、处理器、内存、缓存等等, 既能够获得当前的配置,也能够获得系统支持的最大配置,好比说支持的最大内存数等。缓存

一、查看内存槽数、那个槽位插了内存,大小是多少bash

二、查看最大支持内存数服务器

三、查看槽位上内存的速率,没插就是unknown。app

dmidecode的输出格式通常以下:ide

其中的前三行都称为记录头(recoce Header), 其中包括了:
一、recode id(handle): DMI表中的记录标识符,这是惟一的,好比上例中的Handle 0×0002。
二、dmi type id: 记录的类型,譬如说:BIOS,Memory,上例是type 2,即”Base Board Information”
三、recode size: DMI表中对应记录的大小,上例为8 bytes.(不包括文本信息,全部实际输出的内容比这个size要更大。)
记录头以后就是记录的值:
四、decoded values: 记录值能够是多行的,好比上例显示了主板的制造商(manufacturer)、model、version以及serial Number。
dmidecode的使用方法
1. 最简单的的显示所有dmi信息:

这样将输出全部的dmi信息,你可能会被一大堆的信息吓坏,一般可使用下面的方法。
2.更精简的信息显示:

-q(–quite) 只显示必要的信息,这个很管用哦。
3.显示指定类型的信息:
一般我只想查看某类型,好比CPU,内存或者磁盘的信息而不是所有的。这可使用-t(–type TYPE)来指定信息类型:

dmidecode到底支持哪些type?
这些能够在man dmidecode里面看到:
文本参数支持:
bios, system, baseboard, chassis, processor, memory, cache, connector, slot
数字参数支持不少:(见附录)
4.经过关键字查看信息:
好比只想查看序列号,可使用:

-s (–string keyword)支持的keyword包括:

5.示例
5.1 查看当前内存和支持的最大内存
Linux下,可使用free或者查看meminfo来得到当前的物理内存:

这里显示了当前服务器的物理内存是8GB。
服务器到底能扩展到多大的内存?

可是,事实不必定如此,所以插槽可能已经插满了。也就是咱们还必须查清这里的8G究竟是4*2GB, 2*4GB仍是其余?
若是是4*2GB,那么尽管能够扩展到64GB,可是插槽已经插满,没法扩展了:

根据上面输出能够发现,若是要扩展,只有将上面的内存条换成16GB的,才能达到4*16GB=64GB的最大支持内存。
附录:
dmidecode支持的数字参数:
Type Information

 

相关文章
相关标签/搜索