首页 >> 技术文档 >> 独立服务器

Linux系统中查看CPU信息的九个有用命令整理

来源:数脉科技 编辑:数脉科技编辑部 发布时间:2021-06-10 22:14

在租用服务器的时候,一个很重要的要素就是考虑CPU,好的CPU可以有效提升服务器的整体性能。那么,如果使用Linux系统的话,我们应该如何查看CPU信息?

为了方面大家查看CPU信息,本文整理九个查看CPU信息的命令,可以简单查看诸如CPU架构、vendor_id、型号、型号名称、CPU核心数、每个核心的速度等内容。

本质上,/proc/cpuinfo包含所有这些信息,每个其他命令/实用程序都从该文件中获取其输出。话虽如此,但下面还是介绍下用于获取服务器CPU信息的9个命令。

1、使用cat 命令获取CPU信息

可以通过cat命令查看/proc/cpuinfo文件的内容,简单的查看系统CPU的信息,命令如下所示:

$ cat /proc/cpuinfo

Linux服务器CPU信息显示如下:

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 69
model name	: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
stepping	: 1
microcode	: 0x1c
cpu MHz		: 1700.062
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
bugs		:
bogomips	: 4788.92
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:
......

稍微具体一点,也可以使用grep命令- 一种用于在纯文本数据中搜索与正则表达式匹配的行的CLI工具。这个可以仅输出供应商名称、型号名称、处理器数量、内核数量等:

$ cat /proc/cpuinfo | grep 'vendor' | uniq		#view vendor name
$ cat /proc/cpuinfo | grep 'model name' | uniq		#display model name
$ cat /proc/cpuinfo | grep processor | wc -l		#count the number of processing units
$ cat /proc/cpuinfo | grep 'core id'			#show individual cores

2、lscpu 命令——显示CPU架构信息

lscpu命令从sysfs和/proc/cpuinfo中来获取CPU 架构信息,如下所示:

$lscpu

Linux CPU架构信息如下:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 69
Model name:            Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
Stepping:              1
CPU MHz:               1303.687
CPU max MHz:           2700.0000
CPU min MHz:           800.0000
BogoMIPS:              4788.92
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              3072K
NUMA node0 CPU(s):     0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts

3、cpuid命令——显示x86 CPU

cpuid命令从CPUID指令中收集的有关CPU的完整信息,并从该信息中发现 x86 CPU 的确切型号。

确保在运行之前已经安装它。

$ sudo apt install cpuid        #Debian/Ubuntu systems
$ sudo yum install cpuid	#RHEL/CentOS systems 
$ sudo dnf install cpuid	#Fedora 22+

安装后,运行cpuid以收集有关x86 CPU信息。

$cpuid

显示x86 CPU信息如下:

CPU 0:
   vendor_id = "GenuineIntel"
   version information (1/eax):
      processor type  = primary processor (0)
      family          = Intel Pentium Pro/II/III/Celeron/Core/Core 2/Atom, AMD Athlon/Duron, Cyrix M2, VIA C3 (6)
      model           = 0x5 (5)
      stepping id     = 0x1 (1)
      extended family = 0x0 (0)
      extended model  = 0x4 (4)
      (simple synth)  = Intel Mobile Core i3-4000Y / Mobile Core i5-4000Y / Mobile Core i7-4000Y / Mobile Pentium 3500U/3600U/3500Y / Mobile Celeron 2900U (Mobile U/Y) (Haswell), 22nm
   miscellaneous (1/ebx):
      process local APIC physical ID = 0x0 (0)
      cpu count                      = 0x10 (16)
      CLFLUSH line size              = 0x8 (8)
      brand index                    = 0x0 (0)
   brand id = 0x00 (0): unknown
   feature information (1/edx):
      x87 FPU on chip                        = true
      virtual-8086 mode enhancement          = true
      debugging extensions                   = true
      page size extensions                   = true
      time stamp counter                     = true
      RDMSR and WRMSR support                = true
      physical address extensions            = true
....

4、dmidecode命令——显示Linux硬件信息

dmidecode是一个用于检索任何Linux系统硬件信息的工具。它以我们可读的格式转存计算机的DMI(又名 SMBIOS)表内容,以便于检索。SMBIOS 规范定义了各种DMI类型,对于CPU,使用“processor”命令如下:

$ sudo dmidecode --type processor

显示Linux硬件信息如下所示:

# dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x0004, DMI type 4, 42 bytes
Processor Information
	Socket Designation: U3E1
	Type: Central Processor
	Family: Core i5
	Manufacturer: Intel(R) Corporation
	ID: 51 06 04 00 FF FB EB BF
	Signature: Type 0, Family 6, Model 69, Stepping 1
	Flags:
		FPU (Floating-point unit on-chip)
		VME (Virtual mode extension)
		DE (Debugging extension)
		PSE (Page size extension)
		TSC (Time stamp counter)
		MSR (Model specific registers)
		PAE (Physical address extension)
		MCE (Machine check exception)
		CX8 (CMPXCHG8 instruction supported)
		APIC (On-chip APIC hardware supported)
		SEP (Fast system call)
		MTRR (Memory type range registers)
		PGE (Page global enable)
		MCA (Machine check architecture)
.....

5、Inxi工具——显示Linux系统信息

Inxi是一个强大的命令行系统信息脚本,适用于控制台和 IRC(互联网中继聊天),当然也可以使用它来即时检索硬件信息。

首先可以像这样安装:

$ sudo apt install inxi 	#Debian/Ubuntu
$ sudo yum install inxi		#RHEL/CentOS 
$ sudo dnf install inxi		#Fedora 22+

要显示完整的CPU信息,包括每个CPU的时钟速度和CPU 最大速度(如果可用),请使用以下-C标志:

$ inxi -C

这样会打印Linux系统系统信息:

CPU:       Dual core Intel Core i5-4210U (-HT-MCP-) cache: 3072 KB 
           clock speeds: max: 2700 MHz 1: 1958 MHz 2: 1993 MHz 3: 1775 MHz 4: 1714 MHz

6、lshw工具——列出硬件配置

lshw是用于收集有关计算机硬件配置息的最小工具,可以使用该-C选项来选择硬件类别,在这种情况下为 CPU:

$ sudo lshw -C CPU

输出Linux硬件配置信息:

*-cpu                   
       description: CPU
       product: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
       vendor: Intel Corp.
       physical id: 4
       bus info: [email protected]
       version: Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz
       serial: To Be Filled By O.E.M.
       slot: U3E1
       size: 2626MHz
       capacity: 2700MHz
       width: 64 bits
       clock: 100MHz
       capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts cpufreq
       configuration: cores=2 enabledcores=2 threads=4

7、hardinfo – 在GTK+窗口中显示硬件信息

hardinfo在 GTK+窗口中显示硬件信息,可以按如下方式安装它:

$ sudo apt install hardinfo 	#Debian/Ubuntu
$ sudo yum install hardinfo	#RHEL/CentOS
$ sudo dnf install hardinfo	#Fedora 22+

安装好后,输入以下命令:

$ hardinfo

Linux系统信息

它还使你能够通过单击“Generate Report(生成报告)”按钮来生成系统硬件信息报告。在下面的界面中,单击“Generate(生成)”继续。请注意,需要选择要生成的硬件信息类别。

生成系统信息报告

生成html格式的报告后,可以从浏览器中查看它,如下图所示。

Linux系统详细信息

8、hwinfo – 显示当前硬件信息

hwinfo用于提取有关Linux 系统中存在的硬件的信息,要显示有关 CPU 的信息,请使用--cpu

$ hwinfo --cpu

打印当前的硬件信息:

01: None 00.0: 10103 CPU                                        
  [Created at cpu.460]
  Unique ID: rdCR.j8NaKXDZtZ6
  Hardware Class: cpu
  Arch: X86-64
  Vendor: "GenuineIntel"
  Model: 6.69.1 "Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz"
  Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,ht,tm,pbe,syscall,nx,pdpe1gb,rdtscp,lm,constant_tsc,arch_perfmon,pebs,bts,rep_good,nopl,xtopology,nonstop_tsc,aperfmperf,eagerfpu,pni,pclmulqdq,dtes64,monitor,ds_cpl,vmx,est,tm2,ssse3,sdbg,fma,cx16,xtpr,pdcm,pcid,sse4_1,sse4_2,movbe,popcnt,tsc_deadline_timer,aes,xsave,avx,f16c,rdrand,lahf_lm,abm,epb,tpr_shadow,vnmi,flexpriority,ept,vpid,fsgsbase,tsc_adjust,bmi1,avx2,smep,bmi2,erms,invpcid,xsaveopt,dtherm,ida,arat,pln,pts
  Clock: 2080 MHz
  BogoMips: 4788.92
  Cache: 3072 kb
  Units/Processor: 16
  Config Status: cfg=new, avail=yes, need=no, active=unknown
....

9、nproc – 打印处理单元(核心数)的数量

nproc命令用于显示计算机上存在的处理单元数量:

$nproc

有关其他使用信息和选项,请阅读这个命令的帮助手册页,如下所示:

$ man commandname

总结:

以上就是简单分享Linux系统查看CPU信息的九个命令,仅供参考,如果大家有其它更好的查看CPU信息方法,欢迎交流讨论。

在租用服务器的时候,我们都可以通过以上任意一种方法来查看CPU信息,以确定是否和主机商家描述的一致,毕竟CPU处理数据的能力直接对服务器的性能有较大影响。