http://blog./linux/1162.html 为什么我们要查看系统资源呢? 维护服务器的时候,要经常查看系统资源的,可以了解一下服务器的运行情况。系统优化时,比如使用memcache时,我要决定分配多少内存给他合适呢,mysql的innodb的参数优化也要考虑到内存使用率,i/o的频繁程度啊,如果使用apache的话,要启动多少个httpd比较合适呢,如果数据库的数据太大,我要看看是不是增加磁盘呢等等,这个时候,我们要知道,有多少资源可用,才能更好的优化我们的系统。
1,top命令查看cpu,mem的使用情况 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 21093 root 15 0 12700 736 524 S 2 0.0 80:01.36 cmahostd 1 root 15 0 10324 84 52 S 0 0.0 1:10.26 init 2 root RT -5 0 0 0 S 0 0.0 0:27.31 migration/0 %cpu 进程所占cpu时间的百分比 2,top 后 在shift + p 所占进程的排序显示 3,top 后 在shift + m 所占内存的排序显示 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 11981 root 34 19 276m 43m 1452 S 0 1.1 64:22.57 yum-updatesd 2601 apacheus 15 0 413m 37m 5376 S 0 1.0 0:00.76 httpd 18833 apacheus 15 0 415m 36m 5908 S 0 0.9 0:01.49 httpd 18832 apacheus 15 0 415m 35m 5804 S 0 0.9 0:02.19 httpd 22881 apacheus 15 0 415m 35m 5924 S 0 0.9 0:01.62 httpd 4,vmstat 2 每隔2秒查看一下内存,交换分区,i/o,cpu的使用情况 [root@tank ~]# vmstat 2 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 182164 187684 708508 1997704 0 0 1 5 0 0 0 0 100 0 0 1 0 182164 187396 708508 1997708 0 0 0 36 1020 2203 0 0 99 0 0 0 0 182164 187708 708508 1997712 0 0 0 114 1056 2367 1 0 99 0 0 memory下的参数说明: swpd:
已用的交换空间数量 swap交换分区下的参数说明: si:
从磁盘转换到内存的数量 i/o磁盘i/o下的参数说明: bi:
从块设备读的数量 cpu下的一些参数说明: us:
用户方式下所占CPU工作时间的百分比 上面个人觉得比较重要的参数说明 5,df 查看磁盘的使用情况 [root@tank ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 39674192 7252020 30374288 20% / /dev/sda3 49594196 8586164 38448076 19% /usr /dev/sda4 59515556 6405700 50037828 12% /var 1K-blocks 总的磁盘大小 6,mpstat和sar查看cpu的运行情况,这二个差不多 [root@tank ~]# mpstat 11:38:39 AM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s 11:38:39 AM all 0.11 0.01 0.05 0.13 0.00 0.01 0.00 99.68 84.51 %user
用户所占的CPU时间百分比 7,free -m来查看内存,交换分区使用情况,如果不加-m的话,最小单位是KB [root@tank ~]# free -m total used free shared buffers cached Mem: 3823 3647 175 0 703 1945 -/+ buffers/cache: 998 2825 Swap: 24003 177 23825 total
表时总量是多少 8,iostat查看磁盘i/o情况 [root@krlcgcms01 ~]# iostat -x 2 Linux 2.6.18-92.1.10.el5 (krlcgcms01) 12/10/2010 avg-cpu: %user %nice %system %iowait %steal %idle 0.11 0.01 0.06 0.13 0.00 99.68 Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util cciss/c0d0 0.21 7.78 0.44 3.00 12.13 86.31 28.63 0.03 7.68 3.39 1.17 rrqm/s: 每秒进行 merge 的读操作数目。即 delta(rmerge)/s |
|