ps/top/htop/dstat命令的使用说明

ps命令参数说明

      ps命令是一种静态显示进程(process)状态的外部命令,获取的是某一个时间点的状态信息,其常用选项参数如下:

        -A:all process信息

        -a:与terminal无关的所有进程

        -e:同-A参数

        -u:有效用户的进程

        -l:长格式输出进程信息

     ps命令参数多而杂,一般我们主要使用常用的几个ps带参数的命令

     ps aux:查询所有的进程

             image.png

字段说明:

        USER:进程所属的使用者

        PID:进程id

        %CPU:进程消耗的CPU百分比

        %MEM:进程消耗的物理内存百分比

        VSZ:进程消耗的虚拟内存

        RSS:集成消耗的常驻物理内存

        TTY:进程运行在哪个终端机上,”?“代表与终端机无关,”pst/0“代表伪终端,例如来源于通过网络访问方式的telent/ssh等,”tty1~6“代表本机tty终端登录方式

        STAT:status状态(S/D/T/R/Z)

        START:进程被启动的时间

        TIME:进程使用cpu时间

        COMMAND:启动进程的命令


    ps -l:查询用户自身的bash进程

image.png

字段说明:

        F:flag旗标

            4    used super-user privileges 表示使用root权限的进程

            1    forked but didn't exec表示此子进程仅通过复制(fork)而未实际执行(exec)

        S:status状态(S/R/D/T/Z

        UID:进程使用者的uid

        PID:进程pid

        PPID:进程的上级父进程id

        C:cpu使用百分率

        PRI:进程优先级priority

        NI:进程的Nice值

        ADDR:表示该进程在内核中的那个部分,如果是running状态,则显示为“-”

        SZ:表示内存被消耗的量

        WCHAN:表示目前进程是否在运行(- 表示正在运行)

        TTY:使用者的终端登录信息

        TIME:进程使用cpu的时间

        CMD:启用此进程的命令

top命令参数说明

     top命令是一种动态显示进程(process)状态的外部命令,默认是每隔5秒显示当前进程的运行状态。top命令显示的内容如下:

image.png

第一行内容 

image.png当前系统时间 image.png 系统已持续运行时间 image.png当前有2个用户登录系统image.png 1分钟、5分钟、15分钟系统平均负载

第二行内容

image.png系统运行的总进程数量 image.png进程状态说明(1个运行running进程、345个睡眠sleeping进程、0个停止stopped集成、0个僵尸zombie进程)

第三行内容

image.png

CPU状态:us: 用户空间使用CPU的时间

                  sy: 内核空间(系统)使用CPU的时间

                  ni: 改变过nice值的进程使用CPU的时间

                  id: 空闲的idle时间

                  wa: IO等待使用CPU的时间

                  hi: 硬中断(Hardware IRQ)使用CPU的时间

                  si: 软中断(Software IRQ)使用CPU的时间

                  st: (time stolen from this vm by the hypervisor)被hypervisor偷走的CPU时间


第四,五行内容

image.png

第四行针对物理内存:total 总量/free空闲可用量/used已使用量/buff|cache缓存量

第五行针对swap交换内存:total总量/free空闲可用量/used已使用量/avail Mem


第六行

image.pngimage.png

该行主要是top下输入指令时显示状态


第七行

image.pngimage.png

显示各个进程的状态

        pid:进程id

        user:进程所属的使用者

        pr:priority进程的优先级1~139

        ni:nice值-20~19(nice=0等价于priority=120)

        virt:进程使用的虚拟内存

        res:Resident Memory Size 进程使用的常驻(物理)内存

        shr:Shared Memory Size 进程使用的共享内存

        s:status进程状态(R-running、S-sleeping、D-uninterruptible sleep、T-stopped by job control signal、t-stopped by debugger during trace、Z-zombie

        %cpu:cpu使用率

        %mem:物理内存使用率

        time+:进程使用cpu的时间累积值(单位1/100秒

        command:启动进程的命令


top默认每隔5秒显示进程状态,并且以cpu的使用率降序排列,常用的选项参数如下:

        -d 数字:指定轮询时间间隔。默认5秒

        -b:以批处理模式执行,通常结合输出重定向方式保存到指定文件中,并结合-n参数限定执行批处理次数

        -n 数字:指定top命令执行的次数,到达后自动停止top进程

        -p pid数字:针对指定的pid进程显示状态

top运行中可使用的快捷键:

        1:如果是多核cpu,则显示多个cpu状态信息

        P:按照CPU使用率排序

        M:按照MEM使用率排序

        N:按照PID数值大小排序

        T:按照Time+数值排序

        k:为选中的进程,发送执行kill信号操作

        r:为选中的进程,发送执行renice操作

        q:quit退出

htop工具

  htop是一个比top功能更强大,使用更灵活的第三方工具程序,使用前需要先安装其rpm程序包。htop进程运行后显示如下:

image.png

 显示数据布局描述

image.png

多核cpu使用率数据显示

image.png

物理内存以及交换内存使用率数据显示

image.png

显示运行的进程(Tasks)、线程(thr)、进程状态(R/S/D/T/Z)、平均负载(1/5/10分钟)、持续运行的时间

image.png

    

        pid: process id

        user:进程运行所属的使用者

        pri:priority进程优先级

        ni:nice进程nice值

        virt:进程使用的虚拟内存

        res:进程使用的常驻物理内存

        shr:进程使用的共享内存

        s:status进程运行状态

        cpu%:进程消耗的cpu值

        mem%:进程消耗的mem值

        time+:进程消耗的cpu累计值

        command:启动进程的命令

image.png

布局最底部,是htop交互式菜单选择项,可以进行更详细方便的选项操作。


htop工具可以非常方便的使用键盘,鼠标对感兴趣的进程执行后续操作,例如:


1、通过鼠标点击或者上下方向键选择所需要锁定的进程记录,然后通过space空格键高亮锁定,示意图如下

image.png

2、 选中某一个进程以后,按s键可以trace跟踪此进程的系统调用

3、使用F3进入搜索选择,可以搜索感兴趣的进程

4、使用F4进入过滤选择,输入进程命令的关键字过滤,查找所需的进程状态信息

5、使用F7调高优先级,使用F8调低优先级

原创文章,作者:N24_shishen,如若转载,请注明出处:http://www.178linux.com/63880

(1)
N24_shishenN24_shishen
上一篇 2016-12-16
下一篇 2016-12-16

相关推荐

  • Liunx系统命令的使用格式

    Liunx系统命令的格式 基本格式如下:               ~]# COMMAND OPTIONS ARGUMENTS COMMAND:      发起一个命令,请求内核将某个二进…

    Linux干货 2016-10-28
  • DNS and BIND 配置指南

    前言     说来接触Linux也有一年了,BIND是我曾经学习RH系Linux接触的第一个服务,对我有着莫大的意义,当初差点因为这个服务难以配置而放弃Linux,今天学完马哥的bind相关系列视频之后,写一篇DNS and BIND的基础到进阶。 一、DNS的基础知识 DNS是什么? DNS(Domain Name …

    Linux干货 2016-03-21
  • 那些年我们一起追过的缓存写法(三)

    原文出处: 蘑菇先生    上次我们说了多级缓存,本章详细介绍下内存缓存该如何设计。 一:分析设计 假设有个项目有一定并发量,要用到多级缓存,如下: 在实际设计一个内存缓存前,我们需要考虑的问题: 1:内存与Redis的数据置换,尽可能在内存中提高数据命中率,减少下一级的压力。 2:内存容量的限制,需要控制缓存数量。 3:热点数…

    Linux干货 2015-03-04
  • BIND(Berkeley Internet Name Domain) is an implementation of the DNS(Domain Name System) (Blob 12)

    正向解析区域、反向解析区域;主/从;子域;基本安全控制;

    2017-11-29
  • 鸟哥?马哥?靠边站!今天猫哥带你玩千万PV级别运维架构实战

    1.哼,从今天开始马哥linux,就是我猫哥的天下了!,马哥你奏凯! 我猫哥在此宣誓,从今以后马哥教育正式更名猫哥教育! 哼,信猫哥,得永生! 2.妹的,都好好给我学习,猫哥我盯着呢 3.猫哥我第一次出镜,给咱来个特写啊小伙,拍的好看了,猫哥就免费给你讲讲Linux运维之道。 4.哎哟,拍的还不赖,猫哥我算是45°角仰望星空了,来来,猫哥给你讲讲互联网运维架…

    Linux干货 2016-04-01

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-23 12:45

    赞~总结的不错~几个命令会经常用到~~继续加油~