一文详解 Linux 系统常用监控工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hansonwang99
V2EX    程序员

一文详解 Linux 系统常用监控工具

  hansonwang99
hansonwang99 2018 年 9 月 18 日 8633 次点击
这是一个创建于 2764 天前的主题,其中的信息可能已经有所发展或是发生改变。

Profile

本文共 1329 字,阅读大约需要 3 分钟 !


概 述

本文主要记录一下 Linux 系统上一些常用的系统监控工具,非常好用。正所谓磨刀不误砍柴工,花点时间总结一下是值得的!

注: 本文首发于 My Personal Blog,欢迎光临 小站

本文内容脑图如下: 本文内容脑图


top 命令

top 命令我想大家都挺熟悉吧! Linux 下的 top 命令有点类似于 Windows 下的任务管理器,能够实时动态地监控并显示系统中各个进程的资源占用状况,是 Linux 下常用的性能监控和分析工具。

一个常见的 top 命令的执行视图如下:

top 命令视图

下面我们详细在图中标注出每个指标的含义,认真看图对比理解吧(必要时可保存该图备查哦):

top 命令视图中各项指标详解

怎么样,理解起来够直观了吧,至于 top 命令的其他一些带参数用法自行 help 吧,太多了,不再赘述了!


htop 命令

htop 是 Linux 下一个交互式的进程浏览器,可以完全替代上一小节中所讲的 top 命令,与 top 命令对比,htop 命令有如下优点:

  • 直接支持鼠标点击操作( 就问你 6 不 6 !)
  • 画面可以水平垂直滚动,更像一个窗口
  • 可以跟踪进程,显示进程打开的文件
  • 支持进程的树状图显示
  • 支持按照名称查找进程

总之可视化方面做得 66 的,我们来体验一下:

htop

就该图来说,分成三部分:

  • 顶部是资源使用情况概览,这进度条看着就挺酷炫
  • 中间是进程表,和 top 命令的类似
  • 下面是操作指引和快捷键清晰明了

我们接下来再来看一些图形化的操作:

  • 进程树状图

htop 进程树状图

  • 鼠标点击各种指标来排序

htop 支持鼠标点击

  • 跟踪进程功能

htop 进程跟踪功能

htop 进程跟踪功能


iotop 命令

iotop 是用来监控硬盘 IO 的使用情况,UI 界面和 top 类似,其中包括 PID、用户、I/O、进程 等相关信息。

Linux 下系统自带的 IO 统计工具如 iostat,nmon 等大多数是只能统计到 per 设备的读写情况,如果你想知道每个进程是如何使用 IO 的就比较麻烦,使用 iotop 命令可以很方便的查看。

iotop 命令


iftop 命令

iftop 是 Linux 系统的流量和带宽监控工具,可用于查看实时的网络流量、监控 TCP/IP 连接等,也是非常有用的!

我们来做一下实验,命令执行后效果如下:

iftop 效果视图

iftop 效果视图

iftop 命令常用的参数如下,这里做个小规模总结:

  • -i 设定监测的网卡,如:# iftop -i eth1
  • -B 以 bytes 为单位显示流量 (默认是 bits),如:# iftop -B
  • -n 使 host 信息默认直接都显示 IP,如:# iftop -n
  • -N 使端口信息默认直接都显示端口号,如: # iftop -N
  • -F 显示特定网段的进出流量,如 # iftop -F 10.10.1.0/24# iftop -F 10.10.1.0/255.255.255.0
  • -h( display this message ),帮助,显示参数信息
  • -p 使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的 IP 信息;
  • -b 使流量图形条默认就显示;

再来总结一下,进入 iftop 视图画面后的一些操作命令 (注意大小写):

  • h切换是否显示帮助;
  • n切换显示本机的 IP 或主机名;
  • s切换是否显示本机的 host 信息;
  • d切换是否显示远端目标主机的 host 信息;
  • t切换显示格式为 2 行 /1 行 /只显示发送流量 /只显示接收流量;
  • N切换显示端口号或端口服务名称;
  • S切换是否显示本机的端口信息;
  • D切换是否显示远端目标主机的端口信息;
  • p切换是否显示端口信息;
  • P切换暂停 /继续显示;
  • b切换是否显示平均流量图形条;
  • T切换是否显示每个连接的总流量;
  • l打开屏幕过滤功能,输入要过滤的字符,比如 ip,按回车后,屏幕就只显示这个 IP 相关的流量信息;
  • L切换显示画面上边的刻度;刻度不同,流量图形条会有变化;
  • j或按k可以向上或向下滚动屏幕显示的连接记录;
  • 123可以根据右侧显示的三列流量数据进行排序;
  • <根据左边的本机名或 IP 排序;
  • >根据远端目标主机的主机名或 IP 排序;
  • o切换是否固定只显示当前的连接;

后 记

由于能力有限,若有错误或者不当之处,还请大家批评指正,一起学习交流!



47 条回复    2018-09-19 14:27:06 +08:00
beginor
    1
beginor  
   2018 年 9 月 18 日 via Android
不错不错,果断收藏了
wusir
    2
wusir  
   2018 年 9 月 18 日
很好很好,期待更多
wyzerg
    3
wyzerg  
   2018 年 9 月 18 日
老哥,果然是运维功底深厚~收藏了,楼主好人,好人一生平安~
lrh3321
    4
lrh3321  
   2018 年 9 月 18 日
不错不错
zhoudaiyu
    5
zhoudaiyu  
PRO
   2018 年 9 月 18 日 via iPhone
让我想起了面试时候被 top 支配的恐惧
E1n
    6
E1n  
   2018 年 9 月 18 日 via Android
感谢!学习一下
GGGG430
    7
GGGG430  
   2018 年 9 月 18 日 via iPhone
我补充一个,dstatt -lcmnd 可以全局查看系统情况,不像以上命令只能系统显示较为片面的一部分
GGGG430
    8
GGGG430  
   2018 年 9 月 18 日 via iPhone
@GGGG430 dstat
WEAlex
    9
WEAlex  
   2018 年 9 月 18 日 via Android
厉害了。。。
looseChen
    10
looseChen  
   2018 年 9 月 18 日
mark
oeagut
    11
oeagut  
   2018 年 9 月 18 日 via iPhone
感谢分享,学习到了
seramat
    12
seramat  
   2018 年 9 月 18 日
很好,收藏
Leigg
    13
Leigg  
   2018 年 9 月 18 日 via iPhone
文首什么显示器来的???
loobert
    14
loobert  
   2018 年 9 月 18 日 via iPhone
支持好文
supercaizehua
    15
supercaizehua  
   2018 年 9 月 18 日
第一个桌面的图太骚了
lazypu
    16
lazypu  
   2018 年 9 月 18 日
奈斯 感谢分享
PythonAnswer
    17
PythonAnswer  
   2018 年 9 月 18 日 via iPhone
排版好,逻辑强,点赞
rockpk008
    18
rockpk008  
   2018 年 9 月 18 日 via Android
刚在公众号拜读了
liuxu
    19
liuxu  
   2018 年 9 月 18 日   1
现在 V2EX 的用户 linux 水准这么低了么?这就文章还拜读了?
airyland
    20
airyland  
   2018 年 9 月 18 日   3
看前面回复特意看了下是链接是不是 V2EX。。
BingoXuan
    21
BingoXuan  
   2018 年 9 月 18 日 via Android
@liuxu 当作给新手更友好的教程就好了
isCyan
    22
isCyan  
   2018 年 9 月 18 日 via Android
@liuxu 水贴太多了,像这种不带广告的稍微有点技术内容的都很少见,所以...
rayjoy
    23
rayjoy  
   2018 年 9 月 18 日
技术贴不多见啊。
wyzerg
    24
wyzerg  
   2018 年 9 月 18 日
@liuxu 有意思哈,您瞧不起这,觉得没水准,那您出个高 linux 水准的文章,我们也来您这拜读下~
hansonwang99
    25
hansonwang99  
OP
   2018 年 9 月 18 日
感谢大家的支持
bigmouthhaile
    26
bigmouthhaile  
   2018 年 9 月 18 日 via Android
虽然是初级的,不过写的蛮好;建议楼主可以搞搞 zabbix 或 prometheus 这方面自动化监控系统硬件的教程
nonkr
    27
nonkr  
   2018 年 9 月 18 日 via iPhone
收藏了,再复习复习
marvinGet
    28
marvinGet  
   2018 年 9 月 18 日
感谢
saltxy
    29
saltxy  
   2018 年 9 月 18 日
收藏了
dangluren
    30
dangluren  
   2018 年 9 月 18 日
师兄,文章可以转载吗
Dkngit
    31
Dkngit  
   2018 年 9 月 18 日
mark
lfzyx
    32
lfzyx  
   2018 年 9 月 18 日
看到 195 人收藏 我 TM 惊呆了
hansonwang99
    33
hansonwang99  
OP
   2018 年 9 月 18 日
@dangluren 可以的,但请注明出处
MOONYANYI
    34
MOONYANYI  
   2018 年 9 月 18 日
棒棒哒,mark
tiiis
    36
tiiis  
   2018 年 9 月 18 日
我想问问图片中的显示器~.~
huieh
    37
huieh  
   2018 年 9 月 18 日
第一个桌面的图太骚了
wyzerg
    38
wyzerg  
   2018 年 9 月 18 日
@liuxu 没有~你发的 google 连接也没办法翻墙,看不到
f4nyc
    39
f4nyc  
   2018 年 9 月 18 日 via iPhone
还以为是说 zabbix 这些……
artandlol
    40
artandlol  
   2018 年 9 月 18 日
没有 nettop,ctop,docker top,docker stats ?
artandlol
    41
artandlol  
   2018 年 9 月 18 日
netatop
liuxu
    42
liuxu  
   2018 年 9 月 18 日
@wyzerg

哦,原来 google 都不能访问,你什么水平清楚了。

t/362252?p=2
wyzerg
    43
wyzerg  
   2018 年 9 月 18 日
@liuxu 是啊~~我水平不高哈哈~ 您看不起这那的,还那句话,发个高端的文章在 V2,我们也来拜读下,今天的水平不高不代表明天哦~
liuxu
    44
liuxu  
   2018 年 9 月 18 日
@wyzerg

我在 v2 几年回复过很多技术贴,想看可以自己去翻。
zhou00
    45
zhou00  
   2018 年 9 月 19 日 via Android
支持大佬,三个命令不够看,还有嘛还有嘛
fhefh
    46
fhefh  
   2018 年 9 月 19 日
@hansonwang99 楼主 显示器是哪个型号的~ 嘿嘿~
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1628 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 25ms UTC 16:30 PVG 00:30 LAX 09:30 JFK 12:30
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86