订阅本站
收藏本站
微博分享
QQ空间分享

用top、vmstat、Htop、sar命令在Linux系统中检查CPU使用率/利用率

lilin 分类:Linux命令 时间:2020/01/13 22:11:12 评论: 加入收藏

本文介绍使用top、vmstat、Htop、sar命令在Linux操作系统中检查CPU使用率/利用率,其实也可以在图形界面中通过工具查看的,可参考使用Stress Terminal UI在Linux终端中轻松监控CPU利用率。

 

前言

在你管理日常角色服务器的同时,你可能希望检查系统的CPU是如何运行的,特别是如果你怀疑某些资源占用可能比预期更多,为了能够做到这一点,有许多Linux工具可以帮助你实时检查它的执行情况。

在我们继续之前,你可以使用lscpu命令检查cpu详细信息:

# lscpu

返回的信息如下:

用top、vmstat、Htop、sar<a href=http://8u.hn.cn/ssh/ target=_blank class=infotextkey>命令</a>在Linux系统中检查CPU使用率/利用率

有关更多详细信息,你可以检查cpuinfo文件:

# cat /proc/cpuinfo | less

 

1.使用top命令

top命令显示Linux进程,并有一个列,详细说明进程如何利用可用/已分配的CPU,如下图所示:

用top、vmstat、Htop、sar<a href=http://8u.hn.cn/ssh/ target=_blank class=infotextkey>命令</a>在Linux系统中检查CPU使用率/利用率

参考:top命令_Linux top命令使用详解:显示或管理执行中的程序。

 

2.使用vmstat命令

vmstat命令报告有关进程、内存、分页、块IO、traps和CPU利用率的虚拟内存统计信息,示例vmstat输出如下所示,最后一列标记为cpu,这应该是我们感兴趣的地方:

# vmstat

返回的信息如下:

用top、vmstat、Htop、sar<a href=http://8u.hn.cn/ssh/ target=_blank class=infotextkey>命令</a>在Linux系统中检查CPU使用率/利用率

上图中的cpu列表示为总CPU时间的百分比。

第一个cpu列“us”(用户代码)显示运行非内核代码所花费的时间百分比。

第二个cpu列“sy”(系统代码)显示运行内核代码所花费的时间百分比。

第三个cpu列,“id”表示空闲时间的百分比。

第四个cpu列“wa”显示等待I/O(输入/输出)所花费的时间百分比。

第五个cpu列“st”(steal time)显示从虚拟机中窃取的时间百分比。

 

3.使用Htop命令

Htop是一个基于免费(GPL)ncurses的Linux进程查看器,它类似于top,但允许你垂直和水平滚动,因此你可以查看系统上运行的所有进程及其完整命令行,以及将它们作为进程树查看,选择多个进程并执行操作他们。

可以在不输入PID的情况下完成与进程(查杀、重命名)相关的任务。

用top、vmstat、Htop、sar<a href=http://8u.hn.cn/ssh/ target=_blank class=infotextkey>命令</a>在Linux系统中检查CPU使用率/利用率

参考:在Linux系统中安装Wget、Htop、Nano、Lynx、Fzf、Pydf的方法。

 

4.使用sar命令

System Activity Report的首字母缩写,此命令用于在Unix操作系统中收集,报告或保存系统活动信息。

sar的语法如下:

sar [options] [interval [count] ]

在Linux上安装sar:

1、在Ubuntu/Debian上安装sar:

$ sudo apt -y install sysstat

2、在Arch/Manjaro上安装sar:

$ sudo pacman -S sysstat

3、在Fedora/CentOS上安装sar:

$ sudo dnf install sysstat

$ sudo yum install sysstat

安装后,启用sysstat以开始收集系统信息,在配置文件中将ENABLED=”false”更改为ENABLED=”true”,如下所示,编辑完成后,重新启动sysstat:

$ cat /etc/default/sysstat

#

# Default settings for /etc/init.d/sysstat, /etc/cron.d/sysstat

# and /etc/cron.daily/sysstat files

#

# Should sadc collect system activity informations? Valid values

# are "true" and "false". Please do not put other values, they

# will be overwritten by debconf!

ENABLED="true"

进行更改后重新启动sysstat:

sudo systemctl restart sysstat

每5秒生成10次CPU报告:

# sar 5 10

用top、vmstat、Htop、sar<a href=http://8u.hn.cn/ssh/ target=_blank class=infotextkey>命令</a>在Linux系统中检查CPU使用率/利用率

 

结论

检查服务器中的cpu资源对于日常管理非常重要,这对于容量规划和检查系统运行状况非常重要。如果你要在命令行进行检查CPU使用率/利用率操作,使用以上介绍的方法即可。

 

TAG:

文章评论

留言与评论(共有 0 条评论)
   
验证码: