htop命令:htop是一款运行于Linux系统监控与进程管理软件,用于取代Unix下传统的top。
选项:
-d #:指定延迟时间间隔;
-u UserName:仅显示指定用户的进程;
-s COLUME:以指定字段进行排序;
子命令:
l:显示选定的进程打开的文件列表;
s:跟踪选定的进程的系统调用;
t:以层级关系显示各进程状态;
a:将选定的进程绑定至某指定的CPU核心;
vmstat命令:报告虚拟内存的统计信息
vmstat [options] [delay [count]]
procs:
r:等待运行的进程的个数;CPU上等待运行的任务的队列长度;
b:处于不可中断睡眠态的进程个数;被阻塞的任务队列的长度;
memory:
swpd:交换内存使用总量;
free:空闲的物理内存总量;
buffer:用于buffer的内存总量;
cache:用于cache的内存总量;
swapq
si:数据进入swap中的数据速率(kb/s)
so:数据离开swap的速率(kb/s)
io
bi:从块设备读入数据到系统的速度(kb/s)
bo:保存数据至块设备的速率(kb/s)
system
in:interrupts,中断速率;
cs:context switch, 上下文 切换的速率;
cpu
us: user space
sy:system
id:idle
wa:wait
st: stolen
选项:
-s:显示内存统计数据;
pmap命令:pmap 提供了进程的内存映射,pmap命令用于显示一个或多个进程的内存状态。
pmap [options] pid [...]
-x:显示详细格式的信息;
另一种查看方式:cat /proc/PID/maps
glances命令:通过 Glances,我们可以监视 CPU,平均负载,内存,网络流量,磁盘 I/O,其他处理器 和 文件系统 空间的利用情况。
常用选项:
-b:以Byte为单位显示网上数据速率;
-d:关闭磁盘I/O模块;
-m:关闭mount模块;
-n:关闭network模块;
-t #:刷新时间间隔;
-1:每个cpu的相关数据单独显示;
-o {HTML|CSV}:输出格式;
-f /PATH/TO/SOMEDIR:设定输出文件的位置;
C/S模式下运行glances命令:
服务模式:
glances -s -B IPADDR
IPADDR:本机的某地址,用于监听;
客户端模式:
glances -c IPADDR
IPADDR:是远程服务器的地址;
dstat命令:多功能系统资源监控工具。
dstat [-afv] [options..] [delay [count]]
常用选项:
-c, --cpu:显示cpu相关信息;
-C #,#,...,total
-d, --disk:显示磁盘的相关信息
-D sda,sdb,...,tobal
-g:显示page相关的速率数据;
-m:Memory的相关统计数据
-n:Interface的相关统计数据;
-p:显示process的相关统计数据;
-r:显示io请求的相关的统计数据;
-s:显示swapped的相关统计数据;
--tcp
--udp
--raw
--socket
--ipc
--top-cpu:显示最占用CPU的进程;
--top-io:最占用io的进程;
--top-mem:最占用内存的进程;
--top-lantency:延迟最大的进程;
kill命令:
用于向进程发送信号,以实现对进程的管理;
显示当前系统可用信号:
kill -l [signal]
每个信号的标识方法有三种:
1) 信号的数字标识;
2) 信号的完整名称;
3) 信号的简写名称;
向进程发信号:
kill [-s signal|-SIGNAL] pid...
常用信号:
1) SIGHUP:无须关闭进程而让其重读配置文件;
2)SIGINT:终止正在运行的进程,相当于Ctrl+c
9)SIGKILL:杀死运行中的进程;
15)SIGTERM:终止运行中的进程;
18)SIGCONT:继续运行进程
19)SIGSTOP:暂停运行中进程
注意:9和15号信号不同之处在与15号可以不损换数据,9号信号可能在进程没有保存数据就把进程杀死,而导致数据丢失或损坏。
killall命令:以名字方式来杀死进程
killall [-SIGNAL] program