htop-交互式进程查看器,一个跨平台的交互式进程查看器。
htop是top的功能扩展,它的色彩搭配也很丰富,整体上使用起来更加友好。
安装
yum install epel-release -y
yum install htop -y
使用
htop
可以使用键盘和鼠标控制。通过点击鼠标查看CPU和内存排序
下面是 F1~F10 的功能和对应的字母快捷键。
F1 Help 查看htop使用说明
F2 Setup 界面设定
F3 Search 搜索进程
F4 filter 过滤
F5 Tree 以树形结构显示
F6 Sortby 选择排序方式
F7 Nice - 可减少nice值,这样就可以提高对应进程的优先级
F8 Nice + 可增加nice值,这样就可以降低对应进程的优先级
F9 Kill 可对进程传递信号
F10 Quit 结束htop
命令行选项(COMMAND-LINE OPTIONS)
-d --delay=DELAY 设置延迟更新时间,单位秒
-h --help 显示htop 命令帮助信息
-u --user=USERNAME 只显示一个给定的用户的过程
-p --pid=PID,PID… 只显示给定的PIDs
-s --sort-key COLUMN 依此列来排序
-v –version 显示版本信息
交互式命令(INTERACTIVE COMMANDS)
上下键或PgUP, PgDn 选定想要的进程,左右键或Home, End 移动字段,当然也可以直接用鼠标选定进程;
Space 标记/取消标记一个进程。命令可以作用于多个进程,例如 "kill",将应用于所有已标记的进程
U 取消标记所有进程
s 选择某一进程,按s:用strace追踪进程的系统调用
l 显示进程打开的文件: 如果安装了lsof,按此键可以显示进程所打开的文件
I 倒转排序顺序,如果排序是正序的,则反转成倒序的,反之亦然
a (在有多处理器的机器上) 设置 CPU affinity: 标记一个进程允许使用哪些CPU
u 显示特定用户进程
M 按Memory 使用排序
P 按CPU 使用排序
T 按Time+ 使用排序
F 跟踪进程: 如果排序顺序引起选定的进程在列表上到处移动,让选定条跟随该进程。这对监视一个进程非常有用:通过这种方式,你可以让一个进程在屏幕上一直可见。使用方向键会停止该功能。
K 显示/隐藏内核线程
H 显示/隐藏用户线程
Ctrl-L 刷新
Numbers PID 查找: 输入PID,光标将移动到相应的进程上
查看系统的整体运行情况
htop
命令可以查看一下资源使用面板与运行统计面板就可以大概知道机器的资源使用情况。一般来说Load要小于CPU的核心数,CPU最好不要有一直使用率100%等情况。
排查异常进程
我们经常需要排查占用资源异常高的进程,使用htop
非常方便,可以简单的点击一下进(线)程运行明细标题就可以排序了,非常方便。
CPU占用率最高的进程:点击CPU%
当前消耗磁盘写IO资源最高的进程:DISK READ和DISK WRITE (这两个选项需要自己设置显示)
有时候我们也要查看异常状态的进程(进程状态为D或者Z),也只需在点击一下进(线)程运行明细标题的 S字段就可以了:
查看某个进程的运行状态
实现这个操作也非常简单,这里以查看edr点击键盘的F4
输入筛选条件即可。
批量杀死进程
有时候我们还需要批量杀死一些进程,这里我们只要在要杀死的进程点击空格
键,选好后点击F9
,最后点击回车
就可以给进程发送信号杀死进程了。
glances
glances 是htop
的补充工具。除了列出所有进程及其 CPU 和内存使用情况之外,它还可以显示有关系统的其他信息,比如:
- 网络及磁盘使用情况
- 文件系统已使用的空间和总空间
- 来自不同传感器(例如电池)的数据
- 以及最近消耗过多资源的进程列表
官网: https://nicolargo.github.io/glances/
使用yum安装
yum install epel-release -y
yum install glances -y
使用脚本安装
Glances自动安装脚本
要安装最新的Glances生产就绪版本,只需输入以下命令行:
$ curl -L https://bit.ly/glances | /bin/bash
or
$ wget -O- https://bit.ly/glances | /bin/bash
注意:仅在某些GNU/Linux发行版上受支持。
使用pip安装
通过使用PyPI,使用最新的稳定版本。
$ pip install glances
基本使用
glances
查看信息
|||||||||||||||||| 31.8%] user: 9.0% irq: 0.0% total: 7.64G inactive: 3.04G total: 7.87G 1 min: 0.02
SWAP [ 0.8%] system: 9.0% iowait: 0.0% used: 2.43G buffers: 424K used: 64.2M 5 min: 0.07
idle: 52.0% steal: 0.0% free: 5.21G cached: 5.35G free: 7.81G 15 min: 0.12
NETWORK Rx/s Tx/s TASKS 215 (569 thr), 1 run, 214 slp, 0 oth sorted automatically by cpu_percent, flat view
_abd321e6 0b 0b
_406dfc11 0b 0b CPU% MEM% VIRT RES PID USER NI S TIME+ IOR/s IOW/s Command
_39745e9d 0b 0b 0.0 0.3 450M 20.2M 6090 apache 0 S 7:21.33 0 8M /usr/sbin/httpd -DFOREGROUND
_503a3192 0b 0b 0.0 0.0 25.8M 1.66M 827 root 0 S 1:01.93 632K 0 /usr/lib/systemd/systemd-logind
docker0 0b 0b 0.0 0.0 0 0 428 root -20 S 0:00.00 0 0 xfs-reclaim/dm-
ens192 0b 1Kb 0.0 0.0 0 0 115 root 0 S 0:01.74 0 0 kauditd
lo 0b 0b 0.0 0.0 0 0 423 root -20 S 0:00.00 0 0 xfs_mru_cache
_h6558ab8 0b 0b 0.0 0.0 387M 3.
查看帮助
glances --help
使用示例
- 监控本地机器(独立模式):
$ glances
- 使用Web界面(Web UI)监视本地计算机:
$ glances -w
Glances web服务器启动于http://0.0.0.0:61208/
提示:需要安装模块pip3 install bottle
- 可以通过配置密码以仅允许已授权用户使用
[root@localhost ~]# glances -w --password
Define the Glances webserver password (glances username):
Password (confirm):
Do you want to save the password? [Yes/No]: yes
Glances Web User Interface started on http://0.0.0.0:61208/
默认的用户名为:glances
- 监控本地机器并将统计数据导出到CSV文件(独立模式):
$ glances --export-csv
- 监控本地机器并将统计数据导出到InfluxDB服务器,刷新时间为5s(独立模式):
$ glances -t 5 --export-influxdb
- 启动Glances服务器(服务器模式):
$ glances -s
将Glances连接到Glances服务器(客户端模式):
$ glances -c
将Glances连接到Glances服务器并将统计数据导出到StatsD服务器(客户端模式):
$ glances -c --export-statsd
启动客户端浏览器(浏览器模式):
$ glances --browser