linux系统管理基础(最常用的Linux系统监控命令)

1监控命令top、mpstat、vmstat

对于Linux系统的爱好者,自然追求的是更开放、开源的生态和更原生的、快捷的应用。对这些人而言,Linux系统的运行状况就显得很重要。对于另一些运维工程师而言,Linux系统是他们的工作内容,系统运行状况需要实时掌控。无论是对于哪一方而言,Linux系统监控都显得必不可少。今天,笔者就和大家盘点最受欢迎的那些系统监控命令。

linux系统管理基础(最常用的Linux系统监控命令)(1)

从系统组成来看,可以分为CPU监控、内存监控、IO监控、磁盘监控……那么,这么多种监控命令中,你最常用的是哪个呢?

1、top

在windows系统下,大家可能都会用ctrl alt delete组合件启动任务管理器,适时的结束崩溃进程,保证系统正常运行。在linux系统中,top有着类似的功能,它也是Linux下常用的性能分析工具,它能够实时显示系统中各个进程的资源占用状况及总体状况。

linux系统管理基础(最常用的Linux系统监控命令)(2)

以下图片部分来源于网络

如下图所示,top命令会将结果按照一定顺序进行显示,并定期更新。可以显示CPU的使用率、内存使用率、交换内存使用大小、高速缓存使用大小、缓冲区使用大小,进程PID、所使用命令等等。

2、mpstat

linux系统管理基础(最常用的Linux系统监控命令)(3)

mpstat(Multiprocessor Statistics,多处理器统计)也是一个常用的实时系统监控工具,也属于CPU监控系列命令。mpstat会报告与CPU相关的统计信息,这些信息存放在/proc/stat文件中。通过这个参数可以比较直观的判断当前的I/O操作是否存在瓶颈。

3、vmstat

vmstat属于内存监控系列。根据相关概念,vmstat(Virtual Meomory Statistics,虚拟内存统计)能够对系统的整体情况进行统计,包括内核进程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。其具体命令一般是通过两种形式来是执行的第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数。如vmstat 2 100# 其中2表示刷新间隔,100表示输出次数。

linux系统管理基础(最常用的Linux系统监控命令)(4)

命令执行后,我们会看到一系列参数。不同的参数代表了包括进程、内存、IO在内不同的含义。如r列表示运行队列,这个值如果长期大于系统CPU个数,就说明CPU资源不足,可以考虑增加CPU;b列表示阻塞的进程数swpd 在等待资源的进程数,比如正在等待I/O或者内存交换等。

2Linux实验室:监控命令iostat与ps

4、iostat

与上面的命令相似,很显然,这个linux系统监控命令是属于IO监控系列的,iostat(I/O statistics,输入输出统计)是一个用于收集显示系统存储设备输入和输出状态统计的简单工具。例如命令:iostat -m -x 1 1000。

linux系统管理基础(最常用的Linux系统监控命令)(5)

从结果来看,同样是分为不同列的不同含义表示。如果您需要了解更多的iostat的信息,可以输入man iostat命令寻求帮助。

5、ps

ps属于进程监控类,也是监控最好CPU的Java线程。ps即Process Status,进程状态,该命令是最基本同时也是非常强大的进程查看命令。具体可以运行ps -mp pid -o THREAD,tid,time 或者 ps -Lfp pid命令,而其中最常用的命令就是ps aux,即显示当前所有进程。

linux系统管理基础(最常用的Linux系统监控命令)(6)

从上面的图片其实我们能够看到在所有进程中耗时最长的是TID : 30834,1分39秒。为了避免线程太多不好找,可以使用一些命令,让ps输出按照一定的规则进行排序。如:ps aux --sort= rss为按内存升序排列;ps aux --sort=-rss为按内存降序排列;ps aux --sort= %cpu为按cpu升序排列;ps aux --sort=-%cpu为按cpu降序排列。

本期linux实验室为大家带来了最好用的五个linux系统监控命令。这些命令无论是对于linux小白,还是对于linux系统运维工作者都是会经常需要,希望大家能够记得。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页