CentOS作为一种流行的Linux操作系统,是很多企业和个人使用的首选之一。对于开发和维护任务,可能需要查看CPU的状态和性能,并据此进行优化和调整。下面将从几个不同的角度介绍CentOS查看CPU的方法。
一、使用top命令查看CPU
top命令是一种最基本、最常用的查看CPU的方法,其能够实时显示系统中所有进程的CPU占用情况和内存使用情况。通过按下键盘上的数字1键,可以查看到每个CPU核心的占用情况。
top
在top命令的屏幕上,可以看到类似下面的信息:
top - 09:30:09 up 236 days, 13:32, 1 user, load average: 0.06, 0.11, 0.08
Tasks: 128 total, 1 running, 127 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.6 us, 0.3 sy, 0.0 ni, 97.9 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16343156 total, 3541208 free, 8131516 used, 4656432 buff/cache
KiB Swap: 4003836 total, 3101668 free, 901168 used. 7042480 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
225 root 20 0 126464 1292 1100 S 0.3 0.0 711:17.66 watchdog-cpu-
6493 apache 20 0 989508 86240 19824 S 0.3 0.5 0:20.96 httpd
591 root 0 -20 0 0 0 S 0.2 0.0 171:29.70 kworker/8:1H
638 root 20 0 19896 1256 1076 R 0.2 0.0 0:00.05 top
可以通过系统的负载平均值、线程数、内存占用率和CPU占用率等信息来了解系统的整体性能情况。使用q命令可以退出top命令。
二、使用mpstat命令查看CPU
mpstat命令是一个轻量级且专门用于查看CPU信息的工具。使用该命令可以查看每个CPU核心的利用率、上下文切换等信息。
mpstat
mpstat命令会输出一些列的表格,包括CPU平均利用率、每个CPU核心的利用率、上下文切换次数等信息:
Linux 4.18.0-305.10.2.el8_4.x86_64 (ip-172-31-20-23.ec2.internal) 02/18/2022 _x86_64_ (4 CPU)
09:52:28 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
09:52:28 PM all 1.36 0.00 0.45 0.01 0.00 0.02 0.00 0.00 0.00 98.16
可以看到CPU的每个使用情况,包括用户进程、内核、IO等系统状况。
三、使用vmstat命令查看CPU
vmstat命令是一种可用于查看CPU、内存等信息的跨平台工具。使用该命令可以查询虚拟内存和CPU使用情况的相关数据。
vmstat
vmstat命令会输出系统相关信息:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 456908 28376 1276152 0 0 0 0 1114 182 14 2 84 0 0
其中,CPU的使用率显示在id列中,表明CPU空闲的时间。
四、使用sar命令查看CPU
sar命令可以对系统进行一次性或周期性监测,可以用于监测CPU、内存、IO等方面的状况。使用该命令可以查看一段时间内CPU使用的情况。
sar -u
命令会输出CPU的平均使用时间、每个CPU核心的利用率等信息:
10:55:01 AM CPU %user %nice %system %iowait %steal %idle
11:05:01 AM all 1.67 0.00 0.87 0.26 0.00 97.20
11:15:01 AM all 1.64 0.00 0.96 0.17 0.00 97.24
可以看到CPU的利用率在不同时间段内的差异,可以更好地了解CPU的使用情况。
五、使用pidstat查看CPU
pidstat命令可以查看指定进程的CPU使用状态,可以看到每个进程的CPU占用率和上下文切换次数等信息。
pidstat
命令会输出信息:
Linux 3.10.0-936.7.1.el7.x86_64 (ip-172-30-0-83) 02/17/2022 _x86_64_ (2 CPU)
10:30:01 PM UID PID %usr %system %guest %wait %CPU CPU CMD
10:40:01 PM 0 24548 0.01 1.04 0.00 0.00 1.05 0 nginx
10:40:01 PM 0 24549 0.00 1.03 0.00 0.00 1.03 0 nginx
可以看到nginx进程的利用率和状态,方便用户更好地了解系统性能。
六、总结
通过上述几种方法,CentOS查看CPU的方法有很多,选择一种最适合自己的方法就可以更深入地了解系统,进行进程调整和优化。