Linux 上 CPU 信息怎么获取?这6条命令不能忘记!

简介: 【10月更文挑战第31天】

在 Linux 系统中,获取 CPU 信息是系统管理员、开发人员以及性能调优专家的常见任务。了解 CPU 的详细信息可以帮助你更好地管理系统资源、排查性能问题以及优化应用程序。本文将详细介绍 6 条关键命令,帮助你在 Linux 系统上获取 CPU 信息。

  • lscpu:提供总体的 CPU 架构信息。
  • cat /proc/cpuinfo:详细列出每个逻辑处理器的信息。
  • top:实时监控 CPU 使用情况。
  • htop:增强的 top,具有更友好的界面。
  • mpstat:报告各个 CPU 的统计信息。
  • dmesg | grep -i cpu:查看内核日志中的 CPU 信息。

1. lscpu

lscpu 是一个简洁而强大的命令,用于显示 CPU 架构的信息。它可以快速提供关于处理器的型号、核心数、线程数、缓存大小等详细信息。

打开终端并输入以下命令:

lscpu

命令的输出包含许多有用的信息,例如:

  • Architecture:CPU 架构类型(例如 x86_64 表示 64 位)。
  • CPU(s):CPU 的总核心数。
  • Thread(s) per core:每个核心的线程数。
  • Core(s) per socket:每个插槽的核心数。
  • Socket(s):插槽数量。
  • Model name:CPU 的型号名称。
  • CPU MHz:当前的 CPU 频率。
  • Cache 信息:L1、L2 和 L3 缓存大小。

2. cat /proc/cpuinfo

/proc/cpuinfo 文件包含了 CPU 的详细信息。通过读取这个文件,可以获得每个 CPU 核心的具体参数。

在终端中输入以下命令:

cat /proc/cpuinfo

该命令的输出可能非常长,因为它会列出每个逻辑 CPU 的信息。例如:

  • processor:逻辑处理器 ID。
  • vendor_id:CPU 供应商。
  • model name:CPU 型号名称。
  • cpu MHz:当前的 CPU 频率。
  • cache size:缓存大小。
  • cpu cores:核心数。
  • flags:CPU 支持的特性和指令集。

3. top

top 命令不仅用于监视系统的实时性能,还可以显示 CPU 的使用情况。通过 top,可以看到各个进程的 CPU 使用率以及整体 CPU 的状态。

在终端中输入以下命令:

top

默认情况下,top 命令的输出如下:

  • %Cpu(s):各类 CPU 使用率,包括用户空间(us)、系统空间(sy)、空闲(id)等。
  • PID:进程 ID。
  • %CPU:进程的 CPU 使用率。

4. htop

htoptop 的增强版本,提供了更友好的用户界面和更多的交互功能。它可以实时显示 CPU 使用情况,并以图形方式展示各个核心的负载。

在大多数 Linux 发行版上,可以使用包管理器安装 htop

sudo apt-get install htop    # 对于 Debian/Ubuntu
sudo yum install htop        # 对于 CentOS/RHEL
sudo dnf install htop        # 对于 Fedora

在终端中输入以下命令:

htop

htop 的界面显示如下:

  • 每个核心的使用率以条形图形式显示。
  • Tasks:任务数量。
  • Load average:系统负载平均值。
  • MemSwp:内存和交换分区的使用情况。

5. mpstat

mpstatsysstat 工具包的一部分,用于报告各个 CPU 的统计信息。它可以帮助你了解每个核心的使用情况、等待时间和中断处理情况等。

在大多数 Linux 发行版上,可以使用包管理器安装 sysstat

sudo apt-get install sysstat    # 对于 Debian/Ubuntu
sudo yum install sysstat        # 对于 CentOS/RHEL
sudo dnf install sysstat        # 对于 Fedora

在终端中输入以下命令:

mpstat -P ALL

该命令的输出如下:

  • %usr:用户空间的 CPU 使用率。
  • %sys:系统空间的 CPU 使用率。
  • %iowait:I/O 等待的 CPU 时间百分比。
  • %idle:CPU 空闲时间百分比。

6. dmesg | grep -i cpu

dmesg 命令用于显示内核和启动日志。通过过滤 cpu 相关信息,可以获取系统启动时内核检测到的 CPU 信息。

在终端中输入以下命令:

dmesg | grep -i cpu

该命令的输出可能包括如下内容:

  • smpboot: CPU0:CPU 的基本信息。
  • Performance Events:性能事件相关信息。
  • node:CPU 所在的 NUMA 节点。
目录
相关文章
|
13天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
99 6
|
14天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
53 3
|
14天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
43 2
|
8天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
38 3
|
14天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
50 3
|
18天前
|
弹性计算 Kubernetes Perl
k8s 设置pod 的cpu 和内存
在 Kubernetes (k8s) 中,设置 Pod 的 CPU 和内存资源限制和请求是非常重要的,因为这有助于确保集群资源的合理分配和有效利用。你可以通过定义 Pod 的 `resources` 字段来设置这些限制。 以下是一个示例 YAML 文件,展示了如何为一个 Pod 设置 CPU 和内存资源请求(requests)和限制(limits): ```yaml apiVersion: v1 kind: Pod metadata: name: example-pod spec: containers: - name: example-container image:
107 1
|
27天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
226 2
|
3月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
158 5
|
2月前
|
C# 开发工具 Windows
C# 获取Windows系统信息以及CPU、内存和磁盘使用情况
C# 获取Windows系统信息以及CPU、内存和磁盘使用情况
46 0
|
3月前
|
Prometheus Kubernetes 监控
使用kubectl快速查看各个节点的CPU和内存占用量
在Kubernetes集群中,安装metrics-server,并使用kubectl快速查看集群中各个节点的资源使用情况。
170 0