当linux系统被某一个进程占用时,它无法处理其它进程的请求。余下等待处理的请求必须等到CPU空闲。这个时候,系统会变得很慢。以下命令将能够帮助你识别CPU的利用率,从而解决与CPU相关的问题。
查明CPU利用率是一项重要的任务。linux系统附带了报告CPU利用率的各种工具。利用这些工具,你将可以查明:
*CPU利用率
*显示每一个CPU的利用率
*了解系统CPU的平均利用率
*直观的找到哪个进程正在吃CPU
#1:top
top程序提供了一个动态的、实时的、直观的运行中的系统。它能显示系统的主要信息,并且把由内核管理的任务列表显示出来。top命令监控CPU利用率,进程状态和内存利用率。顶部区域包含了整个系统状态的信息,从左到右,从上到下,依次是:当前时间,正常运行时间,负载均衡,进程总数和概况,CPU状态,内存占用情况,swap占用情况。
输入:top
从CPU状态那一行,可以很清楚地掌握CPU利用率:用户模式(us),系统模式(sy),低优先级用户模式(ni),空闲任务(id),I/O等待中(wa)。top命令还可以详细列出每一个进程占用了多少CPU和多少内存。
#2:mpstat
mpstat命令会把每一个可用的处理器都写入标准输出中,第一个处理器编号为0,同时对所有处理器的全部平均值做一次报告。默认情况下,只会输出全部平均值。要查看每一个CPU的情况,需要增加参数。
输入:mpstat
输入:mpstat -P ALL
#3:sar
使用sar命令可以收集,报告和保存系统活动信息。sar命令会把当天的CPU活动情况全部写入标准输出中。默认记录间隔时间是10分钟,你也可以添加参数来指定sar需要收集数据。
输入:sar
#4:ps
ps是一条功能非常全面的命令。通过使用ps命令,可以很清楚的看出到底是哪一条进程在吃CPU。排在前面的占用的CPU越多
输入:ps -eo pcpu,pid,user,args | sort -k 1 -r | head -16
#5:gnome-system-monitor
如果计算机上装有linux桌面系统,便可以使用图形界面的系统监视器。从系统监视器中,可以很直观地看到进程的状态、占用的CPU和内存等等信息。