监视CPU和内存使用情况:
1.最基本的系统统计信息命令:uptime
字段信息:
**当前时间
** 系统运行的天数,小时和分钟
**当前已登录到系统的用户数
** 1,5,15分钟的负载平均值
2.第二个命令是:vmstat
第一次运行vmstat时,将显示自上次重新引导的平均值,要获取当前统计信息,要加参数。
上面第二行包含当前系统统计信息。
** r:等待CPU时间的进程数,在一个稳定的工作量下应该小于5
**b:处于不可中断状态的进程数,常见情况有I/O引起
**swpd:使用的虚拟内存量(以KB为单位)
**free:未使用的物理内存量(以KB为单位)
**buff:用作缓存空间的内存量(以KB为单位)
**cache:用作高速缓冲空间的内存量(以KB为单位)
**si:从磁盘交换的内存量
**so:交换到磁盘的内存量 **bi:从块设备收到的块数
**bo:发送到块设备的块数
**in:每秒CPU的中断数
**cs:每秒的上下文切换次数
**us:CPU消耗在运行非内核代码上的时间比
**sy:CPU消耗在运行内核代码上的时间比
**id:CPU空闲的时间比
**wa:CPU消耗在等待I/O上的时间比
注意点:
##如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重
##如果free很少,但是si,so也很少(大多数为0),那么不用担心,系统不会受影响
##内存够用时,si,so一般都为0。如果这两个值长期大于0,系统会收到影响,磁盘I/O和CPU都会被消耗
##如果bi,bo长期不等以0,代表内存不足
##若us非常小而sy非常大,很可能被网络攻击
下面利用uptime和vmstat写一个关于监视cpu内存等的shell脚本
打开,$htmlfile ,下面是效果图,虽然不太好看