Dmidecode 这款软件允许你在 Linux 系统下获取有关硬件方面的信息。Dmidecode 遵循 SMBIOS/DMI 标准,其输出的信息包括 BIOS、系统、主板、处理器、内存、缓存等等。偶发现这个工具很有用,就总结一下。

一、DMI简介:

  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的输出格式一般如下:
—————————————-
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的作用:

dmidecode的作用是将DMI数据库中的信息解码,以可读的文本方式显示。由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息。

三、安装Dmidecode:

Dmidecode 在主流的 Linux 发行版中都可以找到,只需通过所用发行版的包管理器安装即可,如:

apt-get install dmidecode
# Debian/Ubuntu
yum install dmidecode
# RHEL/CentOS/Fedora
pacman -S dmidecode
# Arch Linux
emerge -av dmidecode
# Gentoo

或者使用官方源码包安装:
Dmidecode源码包下载地址:http://download.savannah.gnu.org/releases/dmidecode/
Win版本下载地址:http://gnuwin32.sourceforge.net/packages/dmidecode.htm

四、dmidecode命令用法详解:

不带选项执行 dmidecode 通常会输出所有的硬件信息。

Dmidecode 有个很有用的选项 -t,可以按指定类型输出相关信息,假如要获得处理器方面的信息,则可以执行
dmidecode -t processor
输出:

# dmidecode 2.10
SMBIOS 2.6 present.

Handle 0x0004, DMI type 4, 40 bytes
Processor Information
Socket Designation: CPU 1
Type: Central Processor
Family: Xeon
Manufacturer: Intel
ID: A5 06 01 00 FF FB EB BF
Signature: Type 0, Family 6, Model 26, Stepping 5
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
------


Usage: dmidecode [OPTIONS]
Options are:
-d, --dev-mem FILE Read memory from device FILE (default: /dev/mem)
#从设备文件读信息,输出内容与不加参数标准输出相同
-h, --help Display this help text and exit
#显示帮助信息
-q, --quiet Less verbose output
#显示更少的简化信息
-s, --string KEYWORD Only display the value of the given DMI string
#只显示指定DMI字符串的信息
-t, --type TYPE Only display the entries of given type
#只显示指定条目的信息
-u, --dump Do not decode the entries
#显示未解码的原始条目内容
--dump-bin FILE Dump the DMI data to a binary file
--from-dump FILE Read the DMI data from a binary file
-V, --version Display the version and exit
#显示版本信息

五、dmidecode参数string及type列表

(1)Valid string keywords are:
bios-vendor
bios-version
bios-release-date
system-manufacturer
system-product-name
system-version
system-serial-number
system-uuid
baseboard-manufacturer
baseboard-product-name
baseboard-version
baseboard-serial-number
baseboard-asset-tag
chassis-manufacturer
chassis-type
chassis-version
chassis-serial-number
chassis-asset-tag
processor-family
processor-manufacturer
processor-version
processor-frequency

(2)Valid type keywords are:
bios
system
baseboard
chassis
processor
memory
cache
connector
slot

(3)type全部编码列表
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
40 Additional Information
41 Onboard Device

六、命令用法示例:

1、查看服务器型号:dmidecode | grep 'Product Name'

2、查看主板的序列号:dmidecode |grep 'Serial Number'

3、查看系统序列号:dmidecode -s system-serial-number

4、查看内存信息:dmidecode -t memory

5、查看OEM信息:dmidecode -t 11

关于 Dmidecode 的更多用法,你可以通过指定 -h 选项查询。

参考:http://www.ha97.com/4120.html

下面是一些实例:

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包括:

服务器到底能扩展到多大的内存?

#dmidecode -t 16
 # dmidecode 2.7
 SMBIOS 2.4 present.

Handle 0x0013, 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.

附录:
 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

来源:http://blog.sina.com.cn/s/blog_63ac8a6c0100n9lt.html

Linux 查看内存的插槽数,已经使用多少插槽。每条内存多大,已使用内存多大

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

转载于:https://blog.51cto.com/petermis/974486

汇总 Linux下获取详细硬件信息的工具:Dmidecode命令详解相关推荐

  1. Linux下获取详细硬件信息的工具:Dmidecode命令详解

    Dmidecode 这款软件允许你在 Linux 系统下获取有关硬件方面的信息.Dmidecode 遵循 SMBIOS/DMI 标准,其输出的信息包括 BIOS.系统.主板.处理器.内存.缓存等等.偶 ...

  2. Linux下获取设备IPMI信息常用工具

    1.asu (1)概述 asu是IBM官方提供的一个命令行工具,全称IBM Advanced Settings Utility,可以对IMM进行操作. (2)安装 从官网上下载asu对应的RPM安装包 ...

  3. Linux下如何查看硬件信息?

    Linux下如何查看硬件信息? 我们在 Linux 下进行开发时,有时也需要知道当前的硬件信息,比如:CPU几核?使用情况?内存大小及使用情况?USB设备是否被识别?等等类似此类问题.下面良许介绍一些 ...

  4. Linux下获取xml调试信息等级

    Linux下获取XML调试信息等级 #ifndef _LOG_H_ #define _LOG_H_#include <stdio.h> #include <string.h> ...

  5. .net core在Linux下获取AD域信息

    .net core在Linux下获取AD域信息 .net Core 2.1.4 .net core现在System.DirectoryServices只支持Windows平台下使用. 参考: http ...

  6. Linux下zip格式文件的解压缩与压缩操作命令详解

    < Linux下zip格式文件的解压缩与压缩操作命令详解 > * 声明:网上找来比较凌乱,整理了一下,方便自己查看 zip格式文件的解压缩与压缩操作: 1.把/home目录下面的huaza ...

  7. (转)Linux下PS1、PS2、PS3、PS4使用详解

    Linux下PS1.PS2.PS3.PS4使用详解 原文:http://www.linuxidc.com/Linux/2016-10/136597.htm 1.PS1--默认提示符 如下所示,可以通过 ...

  8. linux系统下安装pip3,linux下安装python3和对应的pip环境教程详解

    linux下安装python3和对应的pip环境教程详解 1.下载python3.6的安装包: 2.解压后,进入到解压目录下,执行如下命令,将python3.6进行编译,如下是将python的环境编译 ...

  9. linux mv复制命令,linux中删除复制移动文件rm,mv,cp命令详解linux操作系统 -电脑资料...

    在linux中对文件的复制删除移动分别会使用到rm,mv,cp三个命令,下面我来给大家介绍一下rm,mv,cp命令对文件的常规操作吧, 先看实例 删除复制移动文件命令 Linux代码 rm -rf / ...

最新文章

  1. 数据中台实战(四):商品分析(产品设计篇)
  2. 我是如何用10行代码搬运目标图片的?
  3. 【Qt】Qt登录对话框(设计器实现)
  4. java写入简介_Java关于IO流的介绍
  5. .NET上海社区线下Meetup - 5.22 Blazor Day
  6. .NET Core 3.0 使用Nswag生成Api文档和客户端代码
  7. React开发(283):控制文件不会被git追踪
  8. 批量修改linux换行格式,linux中sed命令批量修改
  9. linux时间函数详解
  10. 【译】在设计表单的时候应该注意的八点
  11. 服务台与事件管理解决方案
  12. 软件工程——五大模型
  13. VBA--类模块学习
  14. Git-用 cherry-pick 挑好看的小樱桃
  15. 田径运动会成绩管理系统
  16. 第三章 流程控制语句
  17. Android ListView 拖拽处理
  18. 复现Oriented R-CNN RTX 2080Ti
  19. 培育百万开发者,Serverless的主战场
  20. BABOK V3 笔记(2):简介

热门文章

  1. AWARD BIOS设置详解
  2. DHCP拒绝服务攻击工具DHCPig
  3. Kali Linux安全渗透教程1.1Linux安全渗透简介
  4. es的聚合mysql聚合速度_Elasticsearch(8) --- 聚合查询(Metric聚合)
  5. iOS 空值判断防止崩溃 (MJExtension)
  6. anaconda基本概念,常用命令
  7. 江行智能CTO樊小毅:AI+边缘计算驱动能源产业变革 | 量子位·视点分享回顾
  8. 香!用一行命令实现文本检索电脑图片|教程
  9. 潘建伟团队又创世界纪录!实现500公里量级现场光纤量子通信
  10. 这周末,清华迎来了最小的学生和最牛的老师,Science都点赞的那种