监控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平均负载,硬盘活动