dstat,htop,top,ps命令 (Blog 8)

 

Linux哲学思想之一:一切皆文件:
内核将其参数全部映射为文件;这些文件保存在/proc, /sys目录中;
/proc目录:保存内核及进程状态信息,是内核参数的映射;

内核参数:
可调参数:调整运行特性;/proc/sys
不可调参数:输出内核统计信息及状态信息;

进程状态:/proc/# 与进程号同名的目录,目录下存放许多当前进程相关信息;

进程号:PID,标识当前系统上的某个进程;

抽象成文件,其内容不方便查看;就用一些命令,为了更直观地查看,输出这些内核状态统计数据;

ps命令:
格式:
UNIX:有-
BSD: 无-
GNU: —

常用组合:
ps axu
a: affinity, 与终端相关;
x: 与终端无关;
u: user, 与用户为中心;
ps -ef
-e: 与终端相关及与终端无关;
-f: full format,完整格式;
ps -eFH
-H: Hierarchy, 层级结构显示;
-F:Full format,更完整的格式;

所有组合中相关字段解释:
PID 进程PID
TTY 进程类型
STAT 进程状态
TIME 占据CPU时间”累积”时长
COMMAND/CMD 运行为进程的程序文件;

USER 进程的身份
%CPU “累积”占用CPU百分比;
%MEM 占据整个内存空间的百分比;
VSZ 占据虚拟内存大小;被称为”虚拟内存集” 虚拟内存:线性地址空间;可被交换到swap中的数据 …;
RSS 占据物理内存大小:被称为”常驻内存集” 不可被交换到swap中的指令 …;
START/STIME 启动进程的系统时间;

PPID 进程的父进程的ID号;
C 进程占用CPU百分比;

进程类型
与终端相关:/dev/tty#, /dev/ttyS#, /dev/pts/#
与终端无关:?

进程状态
运行:Runing, R
停止:sTopping, T
僵死:Zombie, Z

前台进程:+
多线程进程:l
高优先:<
低优先:N

不可中断睡眠:D (uninterrupt sleeping)
可中断睡眠:S (interrupt sleeping)

领导进程:s (session leader)

top命令:
top option
选项:
-b ;以批次显示;默认不切换批次;
-n # ;与-b连用;显示#批;
-d # ;delay,延迟;

内建命令:
l: 隐藏或显示topk栏; uptime命令也可获取;
t: 隐藏或显示task或cpu信息;
1: cpu按个显示或总体显示;
m: 隐藏或显示mem或swap信息;
k: 终止指定PID的进程;
d: 调整delay值;

显示信息:
top – 17:25:02 up 3:03, 5 users, load average: 0.11, 0.13, 0.10
系统时间; date
系统运行时间,
当前登陆用户; who | wc -l
平均负载: 过去1,5,15分钟等待运行进程的队列长度;其值应该小于CPU数量;

Tasks: 369 total, 2 running, 367 sleeping, 0 stopped, 0 zombie
进程状态: 进程个数; 运行进程数; 睡眠进程数; 停止运行进程数; 僵尸进程数;

KiB Mem : 1003160 total, 390552 free, 168096 used, 444512 buff/cache
内存(KiB): 总内存; 空闲内存; 使用内存; buff/cache占用; (实际空闲: free + buff/cache)

KiB Swap: 2097148 total, 2097148 free, 0 used. 616460 avail Mem
swap(KiB): 总SWAP大小; 空闲swap; 使用swap; 可用内存;

%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
CPU: us: 用户空间占据CPU百分比; sy: 内核空间占据CPU百分比; ni: 调整NICE值额外占据CPU百分比; id: 空闲百分比; hi: 硬件中断占据CPU百分比; si: 软中断占据CPU百分比; st: 被虚拟化技术偷走占据CPU百分比; cs: 进程切换占据CPU百分比;

PR: PR+100=优先级范围;
NI: NICE值
VIRT: 虚拟内存集: 虚拟内存占据大小;
RES: 常驻内存集: 不可被交换到swap中的指令;
SHR: 共享内存: 进程共用的共享库;
%CPU: 进程占据CPU百分比
%MEM: 占据内存整个空间百分比;
TIME+: CPU的累积时长;

htop命令:
配置EPEL源:
~]# cat /etc/yum.repos.d/CentOS-EPEL.repo
# fedora epel
[epel]
name=Fedora EPEL for CentOS-$releasever
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7
enabled=1
~]# yum -y install htop

htop option
选项
-d # ;delay,延迟;
-u UserName:仅显示指定用户的进程
-s COLUME: 以指定字段进行排序;

内建命令
u: 显示指定用户的进程
H:线程
K:内核线程
F: 高亮光标跟踪进程;
P M T: CPU, MEM, TIME
F6 > : 选择字段排序
a : affinity 进程绑定在某CPU核心上运行;默认在所有CPU均可运行;
l : 查看选定进程所打开的文件;F5刷新
s : 查看选定进程发起的系统调用;F8自动滚屏 F9停止滚屏
t : ps -eFH 以层级结构显示父子关系;

dstat命令:
非常精巧生成系统资源统计数据;
~]# yum -y install dstat
dstat options [delay [count]]

-c, –cpu: 显示cpu相关信息:
-C #,#,total
-d,–disk: 显示磁盘相关信息:
-D #,#,total
-g 内存页换进换出; 以内存为中心显示数据统计;磁盘至内存;
-m memory
-n interface
-p process 可中断睡眠,不可中断睡眠,3.4
-r io 显示IO请求的相关统计数据;
-s swap的相关统计数据;
-t time

–aio enable aio stats (asynchronous I/O)
–ipc enable ipc stats (message queue, semaphores, shared memory)
–raw enable raw stats (raw sockets)
–socket enable socket stats (total, tcp, udp, raw, ip-fragments)
–tcp enable tcp stats (listen, established, syn, time_wait, close)
–udp enable udp stats (listen, active)
–unix enable unix stats (datagram, stream, listen, active)

expensive 消耗:
–top-bio show most expensive block I/O process
–top-cpu show most expensive CPU process
–top-int show most frequent interrupt
–top-io 最占用IO的进程;
–top-latency: 延迟最大的进程;

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89050

(0)
逆神阳逆神阳
上一篇 2017-11-27
下一篇 2017-11-27

相关推荐

  • LAMP

    1、请描述一次完整的http请求处理过程; 一次完整的http请求处理过程: (1) 建立或处理连接:接收请求或拒绝请求; (2) 接收请求:接收来自于网络上的主机请求报文中对某特定资源的一次请求的过程; (3) 处理请求:对请求报文进行解析,获取客户端请求的资源及请求方法等相关信息; (4) 访问资源:获取请求报文中请求的资源; (5) 构建响应报文: (…

    Linux干货 2016-12-14
  • 字段分隔符和迭代器

        内部字段分隔符(Internal Field Separator)是shell脚本编程中的一个重要概念。在处理文本数据时,有很大的作用。内部字段分隔符是用于特定用途的定界符,IFS是存储定界符的环境变量,它是当前shell环境中使用的默认定界符字符串。     例一:da…

    Linux干货 2016-08-15
  • 16个很有用的在线工具

    1. ExplainShell.com 命令解释 对于Linux用户来说每天都会写各种命令和脚本,那么你可以使用这个网站工具来查看命令式如何工作的,这样可以避免不必要的错误出现;也是一个很好的学习命令的方式 2. BashrcGenerator.com 定制个性命令提示符 简单说就是个性化生成命令提示符,可将生成的代码…

    Linux干货 2015-03-13
  • Linux运维学习历程-第三天-初识Linux

    初识Linux 本章内容    初安装Linus的网络配置    防火墙的关闭    用户    终端    shell    命令纪要 安装linux之后,linux默认网卡开机不是自动激活,并且防火墙开启的,这对初期我们学习linux会…

    Linux干货 2016-08-03
  • 进程管理工具:ps,top,htop,dstat

    进程列表查看,系统资源使用情况查看,比如CPU占用情况,内存使用情况,网络IO,硬盘IO等等。本文介绍的几款工具帮您实现。 进程是指运行中的程序的一个副本,进程的有关信息映射在/proc/#下,ps等工具通过加工/proc/下文件而显示出进程列表。 linux内核属于抢占式多任务式,内核将CPU处理时间按时间片分配给各个进程,这里有一个优先级的问题,优先级越…

    Linux干货 2016-09-22
  • 文件、目录权限

    批量创建新用户: newusers passwd格式文件 批量创建用户,必须和/etc/passwd下的文件格式一样   下面开始批量创建:   首先准备好一个文件:用vi命令建一个user.txt 如图: 然后用cat user.txt 然后newusers批量创建,cat /etc/passwd查看下: 创建成功 批量修改用…

    Linux干货 2016-08-04