linux查看主板内存槽与内存信息的命令dmidecode方法
1、查看内存槽数、那个槽位插了内存,大小是多少
dmidecode|grep-P-A5"Memory\s+Device"|grepSize|grep-vRange
2、查看最大支持内存数
dmidecode|grep-P'Maximum\s+Capacity'
3、查看槽位上内存的速率,没插就是unknown。
dmidecode|grep-A16"MemoryDevice"|grep'Speed'
其实以上数值就是通过dmidecode命令来实现的,具体方法如下:
dmidecode以一种可读的方式dump出机器的DMI(DesktopManagementInterface)信息。
这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置,比如说支持的最大内存数等。
DMI有人也叫SMBIOS(SystemManagementBIOS),这两个标准都由DMTF(DesktopManagementTaskForce)开发。
dmidecode的输出格式一般如下:
Handle0×0002 DMItype2,8bytes BaseBoardInformation Manufacturer:Intel ProductName:C440GX+ Version:727281-0001 SerialNumber:INCY92700942
其中的前三行都称为记录头(recoceHeader),其中包括了:
1、recodeid(handle):DMI表中的记录标识符,这是唯一的,比如上例中的Handle0×0002。
2、dmitypeid:记录的类型,譬如说:BIOS,Memory,上例是type2,即”BaseBoardInformation”
3、recodesize:DMI表中对应记录的大小,上例为8bytes.(不包括文本信息,所有实际输出的内容比这个size要更大。)
记录头之后就是记录的值:
4、decodedvalues:记录值可以是多行的,比如上例显示了主板的制造商(manufacturer)、model、version以及serialNumber。
dmidecode的使用方法
1.最简单的的显示全部dmi信息:
#dmidecode
这样将输出所有的dmi信息,你可能会被一大堆的信息吓坏,通常可以使用下面的方法。
2.更精简的信息显示:
#dmidecode-q
-q(–quite)只显示必要的信息,这个很管用哦。
3.显示指定类型的信息:
通常我只想查看某类型,比如CPU,内存或者磁盘的信息而不是全部的。这可以使用-t(–typeTYPE)来指定信息类型:
#dmidecode-tbios #dmidecode-tbios,processor(这种方式好像不可以用,必须用下面的数字的方式) #dmidecode-t0,4(显示bios和processor)
dmidecode到底支持哪些type?
这些可以在mandmidecode里面看到:
文本参数支持:
bios,system,baseboard,chassis,processor,memory,cache,connector,slot
数字参数支持很多:(见附录)
4.通过关键字查看信息:
比如只想查看序列号,可以使用:
#dmidecode-ssystem-serial-number -s(–stringkeyword)支持的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 totalusedfreesharedbufferscached Mem:8182532801079217174001484724737896 -/+buffers/cache:31244245058108 Swap:419295633044189652 #grepMemTotal/proc/meminfo MemTotal:8182532kB
这里显示了当前服务器的物理内存是8GB。
服务器到底能扩展到多大的内存?
#dmidecode-t16 #dmidecode2.7 SMBIOS2.4present. Handle0×0013,DMItype16,15bytes. PhysicalMemoryArray Location:SystemBoardOrMotherboard Use:SystemMemory ErrorCorrectionType:Multi-bitECC MaximumCapacity:64GB(可扩展到64GB) ErrorInformationHandle:NotProvided NumberOfDevices:4
但是,事实不一定如此,因此插槽可能已经插满了。也就是我们还必须查清这里的8G到底是4*2GB,2*4GB还是其他?
如果是4*2GB,那么尽管可以扩展到64GB,但是插槽已经插满,无法扩展了:
#dmidecode-t17 #dmidecode2.7 SMBIOS2.4present. Handle0×0015,DMItype17,27bytes. MemoryDevice ArrayHandle:0×0013 ErrorInformationHandle:NotProvided TotalWidth:72bits DataWidth:64bits Size:2048MB【插槽1有1条2GB内存】 FormFactor:DIMM Set:None Locator:DIMM00 BankLocator:BANK Type:Other TypeDetail:Other Speed:667MHz(1.5ns) Manufacturer: SerialNumber:BZACSKZ001 AssetTag:RAM82 PartNumber:MT9HTF6472FY-53EA2 Handle0×0017,DMItype17,27bytes. MemoryDevice ArrayHandle:0×0013 ErrorInformationHandle:NotProvided TotalWidth:72bits DataWidth:64bits Size:2048MB【插槽2有1条2GB内存】 FormFactor:DIMM Set:None Locator:DIMM10 BankLocator:BANK Type:Other TypeDetail:Other Speed:667MHz(1.5ns) Manufacturer: SerialNumber:BZACSKZ001 AssetTag:RAM83 PartNumber:MT9HTF6472FY-53EA2 Handle0×0019,DMItype17,27bytes. MemoryDevice ArrayHandle:0×0013 ErrorInformationHandle:NotProvided TotalWidth:72bits DataWidth:64bits Size:2048MB【插槽3有1条2GB内存】 FormFactor:DIMM Set:None Locator:DIMM20 BankLocator:BANK Type:Other TypeDetail:Other Speed:667MHz(1.5ns) Manufacturer: SerialNumber:BZACSKZ001 AssetTag:RAM84 PartNumber:MT9HTF6472FY-53EA2 Handle0x001B,DMItype17,27bytes. MemoryDevice ArrayHandle:0×0013 ErrorInformationHandle:NotProvided TotalWidth:72bits DataWidth:64bits Size:2048MB【插槽4有1条2GB内存】 FormFactor:DIMM Set:None Locator:DIMM30 BankLocator:BANK Type:Other TypeDetail:Other Speed:667MHz(1.5ns) Manufacturer: SerialNumber:BZACSKZ001 AssetTag:RAM85 PartNumber:MT9HTF6472FY-53EA2
根据上面输出可以发现,如果要扩展,只有将上面的内存条换成16GB的,才能达到4*16GB=64GB的最大支持内存。
附录:
dmidecode支持的数字参数:
TypeInformation 0BIOS 1System 2BaseBoard 3Chassis 4Processor 5MemoryController 6MemoryModule 7Cache 8PortConnector 9SystemSlots 10OnBoardDevices 11OEMStrings 12SystemConfigurationOptions 13BIOSLanguage 14GroupAssociations 15SystemEventLog 16PhysicalMemoryArray 17MemoryDevice 1832-bitMemoryError 19MemoryArrayMappedAddress 20MemoryDeviceMappedAddress 21Built-inPointingDevice 22PortableBattery 23SystemReset 24HardwareSecurity 25SystemPowerControls 26VoltageProbe 27CoolingDevice 28TemperatureProbe 29ElectricalCurrentProbe 30Out-of-bandRemoteAccess 31BootIntegrityServices 32SystemBoot 3364-bitMemoryError 34ManagementDevice 35ManagementDeviceComponent 36ManagementDeviceThresholdData 37MemoryChannel 38IPMIDevice 39PowerSupply
以上就是小编为大家带来的linux查看主板内存槽与内存信息的命令dmidecode方法全部内容了,希望大家多多支持毛票票~