监控linux系统,系统本身就有内置的工具,大多数linux发行版本都装备了很多的监控工具。

一下介绍一些内置常用的linux监控工具:

1,top - 查看进程活动

top是好工具啊,很全面的展示出了当前运行系统实时动态的视图,默认情况下,5秒钟刷新一次。

top指令介绍:

 -b  使用批处理模式。(批次模式运行)
 -c  列出程序时,显示每个程序的完整指令,包括指令名称,路径和参数等相关信息。(显示执行任务的命令行)
 -d  <间隔秒数>  设置top监控程序执行状况的间隔时间,单位以秒计算。(设定延迟的时间)
    -i  执行top指令时,忽略闲置或是已成为Zombie的程序。(显示空闲的进程)
 -n   设置监控信息的更新次数。(执行次数,一般与-b一起搭配使用)
 -s  使用保密模式,消除互动模式下的潜在危机。(安全模式下操作)
 -S  使用累计模式,其效果类似ps指令的"-S"参数。(累计时间模式)

 

 

 

 

 

2.vmstat-查看系统活动,硬件及系统信息,使用vmstat可以得到关于进程,内存,内存分页,堵塞IO,traps以及CPU活动的信息。

vmstat指令介绍:

-a:显示活跃和非活跃内存

-f:显示从系统启动至今的fork数量 。引申閱讀:

-m:显示slabinfo

-n:只在开始时显示一次各字段名称。

-s:显示内存相关统计信息及多种系统活动数量。

delay:刷新时间间隔。如果不指定,只显示一条结果。

count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。

-d:显示磁盘相关统计信息。

-p:显示指定磁盘分区统计信息

-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)

-V:显示vmstat版本信息

输出数值解读下:

Procs(进程):

r: 运行队列中进程数量

b: 等待IO的进程数量

Memory(内存):

swpd: 使用虚拟内存大小

free: 可用内存大小

buff: 用作缓冲的内存大小

cache: 用作缓存的内存大小

Swap:

si: 每秒从交换区写到内存的大小

so: 每秒写入交换区的内存大小

IO:(现在的Linux版本块的大小为1024bytes)

bi: 每秒读取的块数

bo: 每秒写入的块数

系统:

in: 每秒中断数,包括时钟中断。

cs: 每秒上下文切换数。

CPU(以百分比表示):

us: 用户进程执行时间(user time)

sy: 系统进程执行时间(system time)

id: 空闲时间(包括IO等待时间)

wa: 等待IO时间 

3,w-现实谁已登陆,他们在做什么呢?

w命令现实系统当前用户及其运行进程的信息。

4,uptime-告诉我们系统已经运行了多长时间了

5,ps-显示进程

ps命令显示当前运行进程的快照。-A显示所有进程。

该命令语法格式如下:
ps [选项]
-e    显示所有进程,环境变量
-f     全格式
-h    不显示标题
-l     长格式
-w   宽输出
a     显示终端上的所有进程,包括其他用户的进程
r     只显示正在运行的进程
x     显示没有控制终端的进程
 

推荐方法:

 

 

 

6,free-内存使用情况

 

7,iostat-查看cpu平均负载,硬盘活动