CentOS 7 查看 CPU 型号

在 CentOS 7 上查看 CPU 型号,常见需求有三类:确认硬件规格、排查云主机配置,以及批量运维时记录节点信息。很多时候你还需要知道逻辑 CPU 数和物理核心数,所以最好准备一套组合命令。

一、最常用的查看方式

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

示例输出:

[root@localhost ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
     40  Intel(R) Xeon(R) CPU E5-2690 v2 @ 3.00GHz

前面的 40 表示逻辑 CPU 数,后半部分是型号名称。这个命令的优点是简单,缺点是信息不够完整。

1.1 每段命令的含义

命令段 作用
cat /proc/cpuinfo 读取内核导出的 CPU 信息
grep name 只保留型号相关行
cut -f2 -d: 提取冒号后的型号部分
uniq -c 合并重复行并统计数量

因为 /proc/cpuinfo 会为每个逻辑 CPU 输出一段信息,所以同一个型号会重复很多次。uniq -c 合并后,数字就能直接反映逻辑 CPU 数。

1.2 什么时候这条命令足够

如果你只是做快速核对,比如确认报价和实际规格是否一致,这条命令已经够用了。若要做压测或容量规划,最好再补上架构、线程数和缓存信息。

二、更推荐的命令

2.1 使用 lscpu

lscpu

lscpu 会把架构、核心数、线程数、型号名和缓存等内容整理成更易读的格式:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Model name:            Intel(R) Xeon(R) CPU E5-2690 v2 @ 3.00GHz
CPU(s):                40

2.2 直接看型号

cat /proc/cpuinfo | grep "model name"

如果你只想快速确认型号,这条命令更直观。

2.3 查看物理核与逻辑核

# 物理核心数
grep "core id" /proc/cpuinfo | sort -u | wc -l

# 逻辑 CPU 数
nproc

在虚拟机或超线程开启的机器上,物理核心数和逻辑核心数往往不同,这一点在性能评估时很重要。

三、一个更完整的检查脚本

echo "Model: $(lscpu | awk -F: '/Model name/ {gsub(/^ +/, "", $2); print $2; exit}')"
echo "Logical CPUs: $(nproc)"
echo "Physical cores: $(grep 'core id' /proc/cpuinfo | sort -u | wc -l)"

这类输出适合写进运维记录,也适合批量采集后导入资产表。

3.1 批量采集思路

场景 建议
单台排查 直接执行命令
批量巡检 用脚本输出到文件
资产登记 统一导入 CMDB
#!/bin/bash
hostname
lscpu | awk -F: '/Model name|CPU\(s\)|Thread|Core/ {gsub(/^ +/, "", $2); print $1 ": " $2}'

四、什么时候一定要查

  • 采购前确认机器是否与报价一致。
  • 迁移前核对虚拟机规格,避免“买小了”或“配错了”。
  • 做压测前记录硬件基线,避免把硬件差异误判为程序问题。

4.1 组合判断更稳

如果你在规划新服务器,可以结合云服务器相关内容、服务器选型指南以及服务器性能测试指南一起看,这样更容易把 CPU、内存和磁盘搭配判断清楚。

4.2 常见误区

误区 解释
只看型号不看核心数 线程数和核心数都会影响性能
只看逻辑核 虚拟化下不等于真实算力
只看一次输出 迁移和扩容后可能变化

五、参考和附注

原文链接:https://www.cnblogs.com/cqzhuomi/articles/17297845.html(博客园 CQZHUOMI,转载)

建议顺手把 lscpunproc/proc/cpuinfo 的结果一起记录,这样后续做性能回溯更容易。

六、再补一条硬件信息

如果你还想确认主板、 BIOS 或机器序列号,CentOS 7 也可以顺手看一下。

dmidecode -t processor | grep -E 'Version|Core Count|Thread Count'
hostnamectl

这些命令适合放进巡检脚本里,和 CPU 型号一起输出。对于运维记录来说,型号、核心数、线程数、序列号最好一次性记全,后面查问题会省很多时间。

字段 用途
型号 核对采购和实例规格
核心数 估算性能
线程数 判断并发能力
序列号 资产登记

七、把这些结果写进资产表

如果你是批量运维,最好把 CPU 型号、核心数、线程数、内存和磁盘一起写进一张资产表。这样在后续做扩容、迁移和压测时,不需要再一台台去查。

资产字段 建议记录内容
主机名 节点唯一标识
CPU 型号 具体型号字符串
逻辑核 nproc 的结果
物理核 core id 汇总结果
内存 free -h
磁盘 lsblk

这种记录方式看起来简单,但在回溯性能问题时非常有用。很多“程序慢”的判断,最后都会落回到硬件规格是否被低估。

如果后面还要和压测结果做对比,建议把 lscpu 输出、机器型号和压测时间一起存档。这样当业务增长后,你可以直接回看同一台机器在不同阶段的表现,而不用重新收集一遍信息。

7.1 记录模板

如果你想直接落到文档里,可以用一个固定模板:主机名、CPU 型号、核心数、线程数、内存、磁盘、采集时间。这个模板一旦统一,后面做横向对比会非常方便。

字段 示例
主机名 web-01
采集时间 2026-08-07 10:00

再往前一步,可以把 free -hlsblk 的输出也一起保存下来。CPU 只是性能的一部分,内存和磁盘经常才是影响用户体感的真正瓶颈。

7.2 批量检查时怎么写脚本

如果你同时管理多台 CentOS 7 机器,最省事的方式不是一台台登录查看,而是把命令收进一个巡检脚本里。脚本的目标很简单:在同一份输出里同时拿到型号、核心数、线程数和主机名,后面复制进表格或工单都方便。

#!/bin/bash
echo "Host: $(hostname)"
echo "Model: $(lscpu | awk -F: '/Model name/ {gsub(/^ +/, "", $2); print $2; exit}')"
echo "Logical CPUs: $(nproc)"
echo "Physical cores: $(grep 'core id' /proc/cpuinfo | sort -u | wc -l)"

7.3 一个更实用的巡检表

检查项 为什么要看 结果判读
型号 核对硬件规格 是否符合采购或实例说明
逻辑核 判断并发能力 是否满足当前业务量
物理核 判断真实算力 是否被超线程误导
架构 兼容性判断 x86_64 还是其他架构
缓存 性能参考 是否适合高负载场景

7.4 常见排查场景

  1. 云主机升级后,lscpu 显示的型号和之前不同,先确认是不是实例规格真的变了。
  2. 压测前发现逻辑核数很多,但实际性能一般,先看是不是物理核和超线程的差异。
  3. 批量巡检时不同机器输出不一致,优先检查镜像版本和虚拟化平台。

如果你要把这类信息长期沉淀下来,最好让巡检脚本把结果直接写进文本或表格文件。这样一来,后面做性能回溯、扩容决策或采购对比时,数据不会散在聊天记录里。