Linux服务器管理工具之进程管理工具top、htop、glances、dstat详解

在企业生产环境中,系统管理员通常要不定时的检查服务器上各资源的使用状况,如CPU使用率,负载,磁盘的读写速率,网络传输状况等等。因此,掌握一个进程管理工具的熟练使用,无疑对管理员的工作有事半功倍的效果。本文借助CentOS6.6向读者尽可能详细讲解top、htop、glances、以及dstat工具的使用方法和技巧。

   A.top工具

top是CentOS系统自带的一款动态显示系统资源使用状况的进程管理工具,类似于windows下的任务管理器,其支持交互式命令以及定制显示内容。在命令行键入top后显示内容如下:

其各字段表达的含义为;

其中load average(平均负载)表示当前cpu上等待运行的进程队列的队列长度,如长度为1表示1个进程,其三个值分别表示过去1分钟、5分钟、15分钟进程队列的平均长度。其值越大表示当前cpu的负载越高

常用选项:

top -d# 指定刷新时间间隔,如:20秒刷新一次 top -d20

top -b以批次方式显示而非实时显示

top -b -n#:指定显示的批次,如:20秒刷新一次,显示3个批次 top -d20 -b -n3

常用交互式命令:

P以cpu百分比排序显示;

M以内存占用量排序显示;

T以cpu时间片累计占用时间排序显示;

l是否显示top一行的信息;

t是否显示进程及cpu两行的相关信息

1是否单独显示每颗cpu的使用率

s修改刷新时间间隔,单位为秒

k杀死指定进程

B.htop工具

htop是top工具的增强版,提供了一个更美观的界面给管理员查看,支持交互命令且支持鼠标选定,由红帽公司收录在Fedora 社区提供的高质量软件源EPEL内,因此使用前需要yum 安装。安装完成后,在命令行键入htop显示如下内容:

常用交互式命令有;

F1获取帮助

 u仅显示指定用户的进程

  s跟踪选定进程发起的系统调用,以跟踪NetworkManager为例,先选中NetWorkManager进程-->键入s进入跟踪进程的界面,等待片刻之后,便会出现跟踪的结果-->按ESC键结束跟踪

l跟踪选定进程运行时打开的文件,以跟踪NetworkManager为例,先选中NetWorkManager进程-->键入l进入跟踪进程的界面,按F5刷新-->按ESC键结束跟踪

t以进程树的形式显示

a设定cpu的亲缘性(将选定的进程绑定到某颗cpu上)先选中某进程-->键入a,进行CPU的选择

C.glances

glances是一个由Python语言开发的一款更为强大的系统资源监控工具,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。支持交互式命令,且具有C/S特性。使用前需要yum安装。在命令行键入glances显示如下:

键入h,可查看其交互式命令的使用帮助,再次键入h,返回监控界面

常用选项

-b: 以Byte为单位显示网卡数据速率;

-d: 关闭磁盘I/O模块

-f/path/to/somewhere: 设置输出文件的位置;注:可能需yum安装python-jinja2模块

-o {HTML|CSV}设置文件的输出格式,可以使用html查看,通常与-f一起使用将html文件传输至/var/www/html/下,就可以使用网页查看了

-m: 禁用mount模块

-n: 禁用网络模块

-t #: 指定刷新时间间隔

-1:每个CPU的数据单独显示

以网页查看glances结果为例,首先安装nginx模块(rpm或yum安装均可)-->启动nginx服务-->glances -o HTML -f  /usr/share/nginx/html/(此为yum安装nginx后,nginx的默认工作目录)

在外部浏览器打开相应的地址即可

glaces还支持C/S模式。在生产环境中,可以使用glances -s -B 服务器IP,在linux服务器上以服务模式启动,然后就可以在客户机上使用glances -c 服务器IP,监控远程服务器的系统资源使用情况。

例如:服务器的IP为:172.16.24.1。在服务器上执行:glances -s -B 172.16.24.1,在客户机上执行:glances -c 172.16.24.1可查看服务器的资源使用状态。(实际生产环境中,我们通常在服务器上将glances -s -B IP工作于后台作业中:nohubglances -s -B 172.16.24.1 &)

D.dstat

dstat是一款比glances还要强大的系统监控工具,在生产环境中应用的更为广泛。它也需事先安装,安装完成后,在命令行键入dstat

其中:total-cpu-usage表示cpu的使用率统计;-dsk/total表示磁盘读写速率;net/total表示网络传输速率;paging表示内存页换进换出情况;system表示中断以及上下文切换(进程切换)

常用选项:

# #:第一个#表示刷新时间间隔,第二个表示要显示的批次

-c:仅统计cpu的使用状况

-d:仅显示磁盘相关的使用情况

-g:仅显示内存页面换进换出的状况

-n:仅显示网络传输的状况

--io:仅显示IO设备的读写速率状况

--top-cpu:显示最占cpu的进程

  --top-io:最占用io设备的进程

--top-mem:最占用内存的进程


时间: 2024-10-16 07:08:04

Linux服务器管理工具之进程管理工具top、htop、glances、dstat详解的相关文章

Linux进程管理工具之top,htop,glances,dstat

借助于本次课程学习外加查阅网上资料,特针对top,glances.dstat做简单介绍. 接触过linux的人都会知道,刚才所述的几个都是与windows中任务管理器一样,只需在命令行中键入这几种命令,就可以定时刷新显示当前系统上各设备使用情况.比如CPU占用百分比.负载,硬盘读写速率,网络传输情况. top 其中显示的从上到下,从左到右各个的含义为: top:当前系统时间: up:系统运行时长: user:当前登陆的用户数: load average:平均负载(逗号隔开的三个数分别为过去一分钟

进程管理工具top,htop,glances,dstat的使用

top篇: TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最"敏感"的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序:而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定. top统计类容详解: 第一行:任务队列信息: top 当前时间,up 系统运行时间,n个用户在线users,loadave

+++++++进程管理工具 top/htop/glances/dstat命令

pstree,ps,pgrep,pkill,pidof top,htop glance,pmap, vmstat,dstat kill job,bg,fg,nohup sar,tsar,iosar,iftop 注释: [string] 后台的内核线程 1.线程内共享进程内存,共享打开文件描述符(文件内容) 2.线程是进程的子单位 3.调度.跟踪困难 USER  PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND USER:

Linux程序管理:top.htop.glances,dstat等命令使用方法

什么是进程? 在Linux系统中:触发任何一个事件时,系统都会将它定义为一个进程,并且给予这个进程一个ID,称为PID,同时依据触发这个进程的用户与相关属性,给予这个PID一组有效的全乡设置.而程序就是系统工作时,启动的二进制文件.程序一般是在磁盘中的,通过用户的执行触发,然后加载到内存中成为一个个体,即进程.而常驻在内存中的进程通常都是负责一些系统所提供的功能以服务用户的各项任务,因此这些常驻进程就会被称为服务 进程和线程的区别: 1.定义 进程是具有一定独立功能的程序,是系统进行资源分配和调

进程管理工具htop/glances/dstat的使用

友情提醒:文件涉及到的实验平台为vmware workstation 10 + Centos 6.6 X86_64,所述命令请谨慎使用. Centos linux中自带了很多进程查看管理工具,诸如:ps ,top,vmstat除了这些之外还有很多提供类似功能的工具程序,这其中有三款高大上的工具 htop/glances/dstat.今天就来认识一下他们. 工具一,htop:令人惊艳的类top工具 htop是款类似于top的工具,但是htop提供的功能却是top望尘莫及. 1.安装 htop非系统

【linux基础】18、进程管理

一.进程概述 1.文件 文件:是磁盘中的一段被标记的存储空间,本质上是一段数据流,这个标记叫文件名 文件名可以引用这段数据 文件存储格式: 二进制格式: 文本格式(ASCII码): 可执行文件:独特的ELF格式,前几个字节标识文件的格式, 2.程序与进程 程序=指令+数据=算法+数据结构 进程是程序的副本,可以有多个 每个进程意识不到别的进程的存在,以为只有自己和内核占用整个内存 进程的启动和调度都是内核完成的 线性地址空间(虚拟内存):内核为每个进程虚拟出一个内存空间, page frame:

连接Linux服务器:Win免费SSH客户端工具

连接Linux服务器:Win免费SSH客户端工具 http://blog.csdn.net/jiangdou88/article/details/51585555

Linux常用命令_(进程管理)

进程管理:ps.top.kill 指令名称:ps语法:ps [选项]-a显示所有终端机下执行的程序.-e显示所有程序.-f显示UID,PPIP,C与STIME栏位.功能描述:查看系统中运行的进程.范例:# ps -aef# ps -A 查看所有进程,和ps -e功能相同 指令名称:top语法:top [-] [d 间隔秒数] [q] [c] [s] [S] [i]d<间隔秒数>设置top监控程序执行状况的间隔时间,单位:秒.功能描述:实时监视系统处理器的状态等信息.范例:# top -d 1

Android内存管理的原理--进程管理

Android内存管理的原理--进程管理 Android采取了一种有别于 Linux 的进程管理策略,有别于Linux的在进程活动停止后就结束该进程,Android把这些进程都保留在内存中,直到系统需要更多内存为止.这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速度. 那Android什么时候结束进程?结束哪个进程呢? 之前普遍的认识是Android是依据一个名为LRU(last recently used 最近使用过的程序)列表,将程

Java日志管理:Logger.getLogger()和LogFactory.getLog()的区别(详解Log4j)

Java日志管理:Logger.getLogger()和LogFactory.getLog()的区别(详解Log4j) 博客分类: Java综合 第一.Logger.getLogger()和LogFactory.getLog()的区别     1.Logger.getLogger()是使用log4j的方式记录日志:  2.LogFactory.getLog()则来自apache的common-logging包. common-logging组件:         Jakarta Commons