linux查看主板内存槽与内存信息的命令dmidecode方法

Paloma ·
更新时间:2024-11-13
· 847 次阅读

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

dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range

2、查看最大支持内存数

dmidecode|grep -P 'Maximum\s+Capacity'

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

dmidecode|grep -A16 "Memory Device"|grep 'Speed'

其实以上数值就是通过dmidecode命令来实现的,具体方法如下:

dmidecode以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息。

这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置,比如说支持的最大内存数等。

DMI有人也叫SMBIOS(System Management BIOS),这两个标准都由DMTF(Desktop Management Task Force)开发。

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

这样将输出所有的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.通过关键字查看信息:

比如只想查看序列号,可以使用:

# 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.

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 # dmidecode 2.7 SMBIOS 2.4 present. Handle 0×0015, DMI type 17, 27 bytes. Memory Device Array Handle: 0×0013 Error Information Handle: Not Provided 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. Memory Device Array Handle: 0×0013 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 2048 MB 【插槽2有1条2GB内存】 Form Factor: DIMM Set: None Locator: DIMM10 Bank Locator: BANK Type: Other Type Detail: Other Speed: 667 MHz (1.5 ns) Manufacturer: Serial Number: BZACSKZ001 Asset Tag: RAM83 Part Number: MT9HTF6472FY-53EA2 Handle 0×0019, DMI type 17, 27 bytes. Memory Device Array Handle: 0×0013 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 2048 MB 【插槽3有1条2GB内存】 Form Factor: DIMM Set: None Locator: DIMM20 Bank Locator: BANK Type: Other Type Detail: Other Speed: 667 MHz (1.5 ns) Manufacturer: Serial Number: BZACSKZ001 Asset Tag: RAM84 Part Number: MT9HTF6472FY-53EA2 Handle 0x001B, DMI type 17, 27 bytes. Memory Device Array Handle: 0×0013 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 2048 MB 【插槽4有1条2GB内存】 Form Factor: DIMM Set: None Locator: DIMM30 Bank Locator: BANK Type: Other Type Detail: Other Speed: 667 MHz (1.5 ns) Manufacturer: Serial Number: BZACSKZ001 Asset Tag: RAM85 Part Number: MT9HTF6472FY-53EA2

根据上面输出可以发现,如果要扩展,只有将上面的内存条换成16GB的,才能达到4*16GB=64GB的最大支持内存。

附录:

dmidecode支持的数字参数:

Type Information 0 BIOS 1 System 2 Base Board 3 Chassis 4 Processor 5 Memory Controller 6 Memory Module 7 Cache 8 Port Connector 9 System Slots 10 On Board Devices 11 OEM Strings 12 System Configuration Options 13 BIOS Language 14 Group Associations 15 System Event Log 16 Physical Memory Array 17 Memory Device 18 32-bit Memory Error 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 32 System Boot 33 64-bit Memory Error 34 Management Device 35 Management Device Component 36 Management Device Threshold Data 37 Memory Channel 38 IPMI Device 39 Power Supply

以上就是小编为大家带来的linux查看主板内存槽与内存信息的命令dmidecode方法全部内容了,希望大家多多支持软件开发网~

您可能感兴趣的文章:Linux下安装MariaDB数据库问题及解决方法(二进制版本的安装)Linux服务器下MariaDB 10自动化安装部署Linux下将数据库从MySQL迁移到MariaDB的基础操作教程使用Linux要改掉几个的命令习惯Linux中更改转移mysql数据库目录的步骤Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)Linux 下dmidecode查看内存条数的命令介绍Linux KVM的QCOW2 和 ROW的详解及区别介绍Linux(Ubuntu) adb 无法识别的问题解决方法



Linux 主板

需要 登录 后方可回复, 如果你还没有账号请 注册新账号