linux查看系统设备型号信息

1. 查看服务器及内存型号信息

1.1. dmidecode简介

DMI(Desktop Management Interface,DMI)直译就是“桌面管理界面”,它就是通过收集系统信息来管理系统。其主要组成部分是Management Information Format(MIF)数据库。这个数据库包括了所有有关电脑系统和配件的信息。通过DMI,用户可以获取序列号、电脑厂商、串口信息以及其它系统配件信息。DMI充当了管理工具和系统层之间接口的角色。它建立了标准的可管理系统更加方便了电脑厂商和用户对系统的了解。dmidecode就是将DMI数据库里面的信息解码后,以文本的方式进行展现的。dmidecode遵循SMBIOS/DMI标准,其输出的信息包括BIOS、系统、主板、处理器、内存、缓存等等。因此我们可以在Linux系统下通过dmidecode来获取有关硬件方面的信息。DMI信息是可以人为篡改,存在查询结果不准确的问题。不过一般正规途径的机器不会去被篡改。)

SMBIOS(System Management BIOS)是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范。SMBIOS和DMI是由行业指导机构Desktop Management Task Force(DMTF)起草的开放性的技术标准,其中DMI设计适用于任何的平台和操作系统。

 

1.2. dmidecode参数选项

以下为dmidecode的命令选项:

命令参数

描述

 -d, --dev-mem FILE   

从设备文件读取信息,输出内容与不加参数标准输出相同。

 -h, --help             

显示帮助信息

 -q, --quiet           

安静模式,尽量不输出冗余的信息。

 -s, --string KEYWORD   

只显示指定DMI字符串的信息。

 -t, --type TYPE       

只输出指定类型的信息

 -H, --handle HANDLE    

只输出指定句柄的信息

 -u, --dump            

显示未解码的原始条目内容。

     --dump-bin FILE  

输出二进制格式的DMI数据文件

     --from-dump FILE   

从二进制的DMI数据文静读取数据

     --no-sysfs

禁止从sysfs文件读取DMI数据

     --oem-string N

只从OEM字符串中读取数据

 -V, --version

显示版本信息

 

不带选项执行dmidecode通常会输出所有的硬件信息。而本文只重点介绍“写作背景”中用到的,也是常用的选项:-t 。选项type内容有:bios、system、baseboard、chassis、processor、memory、cache、connector、slot。

type全部编码列表:

0 BIOS

14 Group Associations

28 Temperature Probe

1 System

15 System Event Log

29 Electrical Current Probe

2 Base Board

16 Physical Memory Array

30 Out-of-band Remote Access

3 Chassis

17 Memory Device

31 Boot Integrity Services

4 Processor

18 32-bit Memory Error

32 System Boot

5 Memory Controller

19 Memory Array Mapped Address

33 64-bit Memory Error

6 Memory Module

20 Memory Device Mapped Address

34 Management Device

7 Cache

21 Built-in Pointing Device

35 Management Device Component

8 Port Connector

22 Portable Battery

36 Management Device Threshold Data

9 System Slots

23 System Reset

37 Memory Channel

10 On Board Devices

24 Hardware Security

38 IPMI Device

11 OEM Strings

25 System Power Controls

39 Power Supply

12 System Configuration Options

26 Voltage Probe

40 Additional Information

13 BIOS Language

27 Cooling Device

41 Onboard Device

 

1.3. 应用

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

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

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

4、查看内存型号信息:dmidecode -t memory | egrep   'Manufacturer|Serial Number'

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

6、查看现有内存数量和内存大小:dmidecode | grep -A16 "Memory Device" | grep "Size" |sed 's/^[ ]*//'  //

7、查看最大支持内存容量:dmidecode | grep "Maximum Capacity" |sed  "s/^[ ]*//"  

2. 查看CPU型号信息

2.1. lscpu简介

lscpu从sysfs和/proc/cpuinfo收集cpu体系结构信息,命令输出的信息包含cpu数量,线程,核数,套接字和Nom-Uniform Memeor Access(NUMA),缓存等 。

2.2. lscpu参数选项

参数选项如下:

参数选项

说明

  -a, –all

 包含上线和下线的cpu的数量,此选项只能与选项e或-p一起指定

  -b, –online

 只显示出上线的cpu数量,此选项只能与选项e或者-p一起指定

  -c, –offline

 只显示出离线的cpu数量,此选项只能与选项e或者-p一起指定

   -e, –extended [=list]

 以人性化的格式显示cpu信息,如果list参数省略,输出所有可用数据的列,在指定了list参数时,选项的字符串、等号(=)和列表必须不包含任何空格或其他空白。比如:’-e=cpu,node’ or ’–extended=cpu,node’

  -h, –help

帮助

  -p, –parse [=list]

 优化命令输出,便于分析.如果省略list,则命令的输出与早期版本的lscpu兼容,兼容格式以两个逗号用于分隔cpu缓存列,如果没有发现cpu缓存,则省略缓存列,如果使用list参数,则缓存列以冒号(:)分隔。在指定了list参数时,选项的字符串、等号(=)和列表必须不包含空格或者其它空白。比如:’-e=cpu,node’ or ’–extended=cpu,node’

  -s, –sysroot directory

 为一个Linux实例收集CPU数据,而不是发出lscpu命令的实例。指定的目录是要检查Linux实例的系统根

  -x, –hex

使用十六进制来表示cpu集合,默认情况是打印列表格式的集合(例如:0,1)

 

输出格式如下:

  Architecture: #架构

  CPU(s): #逻辑cpu颗数

  Thread(s) per core: #每个核心线程

  Core(s) per socket: #每个cpu插槽核数/每颗物理cpu核数

  CPU socket(s): #cpu插槽数

  Vendor ID: #cpu厂商ID

  CPU family: #cpu系列

  Model: #型号

  Stepping: #步进

  CPU MHz: #cpu主频

  Virtualization: #cpu支持的虚拟化技术

  L1d cache: #一级缓存(google了下,这具体表示表示cpu的L1数据缓存)

  L1i cache: #一级缓存(具体为L1指令缓存)

  L2 cache: #二级缓存

2.3. 应用

1、查看CPU型号:lscpu |grep "Model name"  或者 dmidecode -t Processor |grep Version

2、查看CPU逻辑核数:lscpu |grep ^CPU(s)

3、查看CPU 物理核数:lscpu |grep ^Core(s)

 

3. 查看磁盘型号信息

3.1. 工具介绍

3.1.1. smartctl

smartctl是smartmontools中的一个命令行工具,可以执行SMART任务。SMART是一种磁盘自我分析检测技术,早在90年代末就基本得到了普及,每一块硬盘(包括IDE、SCSI)在运行的时候,都会将自身的若干参数记录下来。这些参数包括型号、容量、温度、密度、扇区、寻道时间、传输、误码率等。硬盘运行了几千小时后,很多内在的物理参数都会发生变化,某一参数超过报警阈值,则说明硬盘接近损坏,此时硬盘依然在工作,如果用户不理睬这个报警继续使用,那么硬盘将变得非常不可靠,随时可能故障

首先通过dmesg工具,确认一下硬盘的设备符号。例如一个IDE硬盘连接到Primary IDE 总线上的Slave位置,硬盘设备符号是/dev/hdb,hdb中的h代表IDE,如果显示为sdb,则代表SATA和SCSI。最后一个字幕b代表Primary总线,第二块硬盘即Slave位置

3.1.2. hdparm

hdparm ”(即硬盘参数)是Linux的命令行程序之一,用于处理磁盘设备和硬盘。借助此命令,可以获得有关硬盘,更改写入间隔,声学管理和DMA设置的统计信息。它还可以设置与驱动器高速缓存,睡眠模式,电源管理,声学管理和DMA设置相关的参数。

3.2. 参数选项

3.2.1. smartctl参数

参数:

-h  帮助信息

-V  版本信息

-i  打印基本信息(磁盘设备号、序列号、固件版本…)

-a  打印磁盘所有的SMART信息

-q  TYPE

指定输出的安静模式。
   eorsonly    只打印错误日志。
   lent       有任何打印。
   nserial     不打印序列号

-d  TYPE

指定磁盘的类型。如果没有指定,smartctl会根据磁盘的名字来猜测磁盘类型。

-T  TYPE  

指定当发生错误时,smartctl的容忍程度,是否继续运行。
   conservative      一有错就会退出
   normal        如果必须支持的SMART命令失败,则退出
   permissive     忽略一次必须支持的SMART命令失败
   verypermissive  忽略所有必须支持的SMART命令失败

-b  TYPE  

指定当发生校验错误时,smartctl的动作。
   warn          发出警告,继续执行
   exit           退出smartctl
   ignore        不发出告警,继续执行

-r  TYPE      

smartmontools开发人员相关。

-n  POWERMODE    

指定当磁盘处于节能模式时,smartctl是否继续检查,默认是不检查。
   never   检查
   sleep    除了sleep模式,检查。
   standby  除了sleep或standby模式,检查。
   idle      除了sleep或standby或idle模式,见车。

3.2.2. hdparm参数

参数选项

说明

-a

<快取分区> 设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定。

-A

<0或1> 启动或关闭读取文件时的快取功能。   

-c

<I/O模式> 设定IDE32位I/O模式。   

-C

检测IDE硬盘的电源管理模式。   

-d

<0或1> 设定磁盘的DMA模式。   

-f

将内存缓冲区的数据写入硬盘,并清楚缓冲区。   

-g

显示硬盘的磁轨,磁头,磁区等参数。   

-h

显示帮助。   

-i

显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。   

-I

直接读取硬盘所提供的硬件规格信息。   

-k

<0或1> 重设硬盘时,保留-dmu参数的设定。   

-K

<0或1> 重设硬盘时,保留-APSWXZ参数的设定。   

-m

<磁区数> 设定硬盘多重分区存取的分区数。   

-n

<0或1> 忽略硬盘写入时所发生的错误。   

-p

<PIO模式> 设定硬盘的PIO模式。   

-P

<磁区数> 设定硬盘内部快取的分区数。   

-q

在执行后续的参数时,不在屏幕上显示任何信息。   

-r

<0或1> 设定硬盘的读写模式。   

-S

<时间> 设定硬盘进入省电模式前的等待时间。   

-t

评估硬盘的读取效率。   -T 评估硬盘快取的读取效率。   

-u

<0或1>在硬盘存取时,允许其他中断要求同时执行。-v 显示硬盘的相关设定。   

-W

<0或1> 设定硬盘的写入快取。 -X<传输模式> 设定硬盘的传输模式。   

-y

使IDE硬盘进入省电模式。  -Y 使IDE硬盘进入睡眠模式。   

-Z

关闭某些Seagate硬盘的自动省电功能。

3.3. 应用

查看磁盘厂家型号及序列号:

smartctl -i /dev/sda |egrep 'Model Family|Device Model|Serial Number'

或者

hdparm -i /dev/sda |grep Model

 

4. 查看声卡、网卡、显卡、USB控制器型号信息

4.1. lspci简介

PCIPeripheral Component Interconnect(外围设备互联)的简称,普遍使用在桌面及更大型的计算机上的外设总线。PCI架构被设计为ISA标准的替代品,它有三个主要目标:获得在计算机和外设之间传输数据时更好的性能;尽可能的平台无关;简化往系统中添加和删除外设的工作。lspci命令就是用来显示所有pci设备的信息。

4.2. lspci参数选项

-n:以数字方式显示PCI厂商和设备代码;

-t:以树状结构显示PCI设备的层次关系,包括所有的总线、桥、设备以及它们之间的联接;

-b:以总线为中心的视图;

-d:仅显示给定厂商和设备的信息;

-s:仅显示指定总线、插槽上的设备和设备上的功能块信息;

-i:指定PCI编号列表文件,而不使用默认的文件;

-m:以机器可读方式显示PCI设备信息.

4.3. 应用

1、查看声卡设备型号信息:lspci  |grep -i audio

2、查看网卡设备型号信息:lspci  |grep -i Ethernet

3、查看显卡设备型号信息:lspci  |grep -i vga

4、查看USB控制器参数信息:lspci|grep -i usb

  

原文地址:https://www.cnblogs.com/cooper-73/p/15433219.html