监控系统状态
w/ uptime(一般使用w看) 查看系统负载
第一行的显示:
时间 系统启动时长 多少用户登陆 系统负载: 一分钟 五分钟 十五分钟的负载
第二行的显示:
用户 终端 来自 登陆时间 IDLE空闲了多久
如果远程会显示来自哪,如果本地则没有,tty也会有变化
最关键的是load average后的第一个数字,这个代表了一分钟内的负载。这个值不大于当前cpu processor就说明够用,否则就是说明当前有进程
未被分配到资源,处于等待的状态。
如何查看cpu信息
cat /proc/cpuinfo
vmstat命令
当系统负载大于cpu的时候,就需要查看什么原因导致了cpu不够用,这个时候就需要vmstat命令了。
vmstat 1 表示每一秒显示一次可以看出来变化 vmstat 1 5 表示每一秒显示一次 只显示五次
vmstat 1 10 显示十次1秒
r ---run 表示有多少个进程处于运行的状态。这里说的运行的进程包括排队中的进程
b--- block 被堵塞的进程
swpd ---交换分区,内存不够的时候会放进去。如果这个值在变,说明内存不够用了,内存和交换空间在不停交换数据。
si in有多少k的数据从swap进入到内存中 单位是k
so out有多少k的数据从内存到swap中 单位是k
bi 从磁盘里出来进入到内存里去,就是读的数据量
bo 从内存写到此盘里,就是写的数据。
us 表示用户级别的 用户占用,通常表示用户下的服务,这个数字不会超过100
sy 表示系统本身的进程服务等占用cpu的百分比
id 是空闲 所以 us sy id 相加应该是100
wa wait 跟b有点像, 有多少进程在等待cpu
所以可以通过vmstat判断出来系统的问题是出在什么地方
原文:http://blog.51cto.com/13691454/2109323