Linux学习-pstree,htop,glances,dstat 命令使用
本文将简单介绍pstree,top,htop,dstat的用法:
pstree
pstree - display a tree of processes
pstree:显示进程状态树,pstree命令可以列出当前的进程,以及它们的树状结构。 主要选项如下。
-a:显示执行程序的命令与完整参数。
-c:取消同名程序,合并显示。
-n:以PID大小排序。
-p:显示PID。
-u:显示UID信息。
常用的命令
pstree -a显示全部信息
pstree -p显示进程pid号
区别:Centos6,第一个进程是init ,Centos7是sytemd
ps
ps - report a snapshot of the current processes
显示当前进程信息的一个快照,显示的是静态的信息
linux系统上各进程的相关信息实际都保存在/proc/目录,数字命令的目录对应存储着以该数字做为PID的进程的相关信息,大多数进程管理工具都会去读取此处的信息
常用组合:aux
u: 以用户为中心组织进程状态信息显示
a: 与终端相关的进程;
x: 与终端无关的进程;
常用组合:-ef
-e: 显示所有进程
-f: 显示完整格式程序信息
常用组合:-eFH
-F: 显示完整格式的进程信息
-H: 以进程层级格式显示进程相关信息
常用组合:-eo, axo(自定义进程输出格式)
-eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,comm
axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ni: nice值
pri: priority,优先级
rtprio: 实时优先级
top:
交互式的,动态查看系统运行状态工具
有许多内置命令:
排序方式有:
P:以占据的CPU百分比;(过去一个刷新周期内的CPU占据百分比);
M:占据内存百分比;
T:累积占据CPU时长;
首部信息显示:
uptime信息:l命令
tasks及cpu信息:t命令
cpu分别显示:1 (数字)
memory信息:m命令
退出命令:q
修改刷新时间间隔:s
终止指定进程:k
选项:
-d #: 指定刷新时间间隔,默认为3秒;
-b: 以批次方式;
-n #: 显示多少批次;
htop
htop是top工具的增强版,提供了一个更美观的界面给管理员查看,支持交互命令且支持鼠标选定,由红帽公司收录在Fedora 社区提供的高质量软件源EPEL内,因此使用前需要yum 安装。安装完成后,在命令行键入htop,将显示如下界面:
htop命令:
交互式进程查看工具
#htop 启动htop
界面如下:
F1 获取帮助
U:显示指定用户的进程,htop主界面按U键,看到如下界面,选择相关用户,回车后仅仅显示指定用户所有的进程
仅仅显示root所有的进程
选项:
-d #: 指定延迟时间;-
-u UserName: 仅显示指定用户的进程;
-s COLOMN: 以指定字段进行排序;
命令:
s: 跟踪选定进程的系统调用;
l: 显示选定进程打开的文件列表;
a:将选定的进程绑定至某指定CPU核心;
t: 显示进程树
要使用以上命名,只需要在htop主界面,按下对应的键即可
Glance:
glances是一个由Python语言开发的一款更为强大的系统资源监控工具,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。支持交互式命令,且具有C/S特性。
glances 程序包也是epel源提供,使用yum安装即可
[root@centos7 ~]# rpm -q glances #glances包已经安装
glances-1.7.7-1.el7.noarch
#glances #运行glances 就可以启动glances工具,界面如下:
命令格式:glances [-bdehmnrsvyz1] [-B bind] [-c server] [-C conffile] [-p port] [-P password] [--password] [-t refresh] [-f file] [-o output]
内建命令:
a Sort processes automatically l Show/hide logs
c Sort processes by CPU% b Bytes or bits for network I/O
m Sort processes by MEM% w Delete warning logs
p Sort processes by name x Delete warning and critical logs
i Sort processes by I/O rate 1 Global CPU or per-CPU stats
d Show/hide disk I/O stats h Show/hide this help screen
f Show/hide file system stats t View network I/O as combination
n Show/hide network stats u View cumulative network I/O
s Show/hide sensors stats q Quit (Esc and Ctrl-C also work)
y Show/hide hddtemp stats
注意:使用h查看帮助和退出帮助
常用选项:
-b: 以Byte为单位显示网卡数据速率;
-d: 关闭磁盘I/O模块;
-f /path/to/somefile: 设定出文件位置;
-o {HTML|CSV}:输出格式;
-m: 禁用mount模块
-n: 禁用网络模块
-t #: 刷新间隔
-1:每个CPU的相关数据单独显示;
C/S模式下运行glances命令:
服务模式:
glances -s -B IPADDR & #服务器端启动glances 服务,并置于后台;IPADDR: 指明监听于本机哪个地址
# glances -s -B 172.17.0.22 &
客户端模式:
glances -c IPADDR
# glances -c 172.17.0.22 #连接服务器端IP即可
dstat:
是一个全能系统分析统计工具,dstat支持实时刷新。但是需要安装相关的软件包。 Centos7 光盘里包含有rpm包。
dstat [-afv] [options..] [delay [count]]
常用选项:
-c: 显示cpu相关信息;
-C #,#,...,total;
-d: 显示disk相关信息;
-D total,sda,sdb,...
-g:显示page相关统计数据;
-m: 显示memory相关统计数据;
-n: 显示network相关统计数据;
-p: 显示process相关统计数据;
-r: 显示io请求相关的统计数据;
--top-cpu:显示最占用CPU的进程;
--top-io: 显示最占用io的进程;
--top-mem: 显示最占用内存的进程;
--top-lantency: 显示延迟最大的进程
#dstat 运行dstat工具,其界面如下图
其中:total-cpu-usage表示cpu的使用率统计;-dsk/total表示磁盘读写速率;net/total表示网络传输速率;paging表示内存页换进换出情况;system表示中断以及上下文切换(进程切换)
命令dstat [-afv] [options..] [delay [count]] 中dely字段指明刷新间隔,Count字段指明刷新次数