1.top51Testing软件测试网brw1|0}+a4y?

使用权限:所有使用者


&hwO*z-@(A(\7a.d*NP$\0

使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]


SD,t&^Pw&\W0[;S,z%b0

说明:即时显示process的动态


-K!JOKx}vT-o0

d :改变显示的更新速度,或是在交谈式指令列( interactive command)按s51Testing软件测试网 g3tv5d0z

q :没有任何延迟的显示速度,如果使用者是有superuser的权限,则top将会以最高的优先序执行


G:RD)u `%c%U0

c :切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S :累积模式,会将己完成或消失的子行程( dead child process )的CPU time累积起来


'Y'Q|9}\#YR0

s :安全模式,将交谈式指令取消,避免潜在的危机


"E"Po"w b"N6b$H[j0

i :不显示任何闲置(idle)或无用(zombie)的行程


7Svc*o2N)_/X/@I0

n :更新的次数,完成后将会退出top


2DvX&gG\f0

b :批次档模式,搭配"n"参数一起使用,可以用来将top的结果输出到档案内51Testing软件测试网[wz.g{Sc/J

 


Y`%Lb] K(k5j'l$I0

范例:51Testing软件测试网 p6b'UXoM7wk%V

显示更新十次后退出;


M A Z0@0\I%D0

top -n 10


8p7RV*Wq7o0

 51Testing软件测试网0WM9W,?d LH$P

使用者将不能利用交谈式指令来对行程下命令:


4~-X0VI$Hi.Zg"Wp0

top -s51Testing软件测试网6A^I,~@K

 


GP)^%GG^#WL9PU0

将更新显示二次的结果输入到名称为top.log的档案里:51Testing软件测试网,sL:[S)Qr/K9E U od

top -n 2 -b < top.log   


e P ar'M;_ cq0

另附一个命令简介linux traceroutewindows tracert两个命令相当,跟踪网络路由51Testing软件测试网+?q/}'k+w

 51Testing软件测试网%[e O NzD _

2.vmstat


-C0@6h _$zv$|6r0

正如我们之前讨论的任何系统的性能比较都是基于基线的,并且监控CPU的性能就是以上3点,运行队列、CPU使用率和上下文切换。以下是一些对于CPU很普遍的性能要求:


CMW?"MB%{0

1.对于每一个CPU来说运行队列不要超过3,例如,如果是双核CPU就不要超过6;


c e3S#r3pMg,^0

2.如果CPU在满负荷运行,应该符合下列分布,51Testing软件测试网;d5d v~"`|

a) User Time:65%~70%51Testing软件测试网1AS2_;eZ:P&p

b) System Time:30%~35%


&@*xzc$Te4_Kl0

c) Idle:0%~5%


t#DHF4\#r:~,c$Qn^0

3. mpstat51Testing软件测试网*L} Mz:d;u6D5w{s

对于上下文切换要结合CPU使用率来看,如果CPU使用满足上述分布,大量的上下文切换也是可以接受的。51Testing软件测试网` ^;kx%M?

常用的监视工具有:vmstat, top,dstat和mpstat.


h%t Q[$G:T0

# vmstat 1


3@i5Vm)O0

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----51Testing软件测试网$ts6H'W Q;j

r b swpd free buff cache si so bi bo in cs us sy id wa51Testing软件测试网2Ncju)E

0 0 104300 16800 95328 72200 0 0 5 26 7 14 4 1 95 0


,jpg"y(zAy"T0

0 0 104300 16800 95328 72200 0 0 0 24 1021 64 1 1 98 051Testing软件测试网 u6VI7b5m:l

0 0 104300 16800 95328 72200 0 0 0 0 1009 59 1 1 98 0


6b!^osj5m0

r表示运行队列的大小,51Testing软件测试网"~3m9{b9F\;P

b表示由于IO等待而block的线程数量,


6DV#V!h)]7^"A0

in表示中断的数量,


l["xGK(w{C.t0

cs表示上下文切换的数量,


U{)o0r7CVay}-m0

us表示用户CPU时间,51Testing软件测试网P*oI(w7w1Vl9g

sys表示系统CPU时间,51Testing软件测试网p&J{ZF$i1X4qB-e

wa表示由于IO等待而是CPU处于idle状态的时间,


WA0\ _Av5j8Jq0

id表示CPU处于idle状态的总时间。51Testing软件测试网O4Oj:T+Z8cf4C["L

dstat可以给出每一个设备产生的中断数:51Testing软件测试网"cc3L v`1T'n

# dstat -cip 1


iP'?_Rvg0

----total-cpu-usage---- ----interrupts--- ---procs---


2k hQ%q6xx a0

usr sys idl wai hiq siq| 15 169 185 |run blk new51Testing软件测试网s8I"f4Hp

6 1 91 2 0 0| 12 0 13  | 0 0 051Testing软件测试网0YR0bG ]yT

1 0 99 0 0 0| 0    0  6 | 0 0 051Testing软件测试网K+Z'G jr/O)@Kr XIv

0 0 100 0 0 0| 18 0  2 | 0 0 051Testing软件测试网-|s5Oh6B/d

0 0 100 0 0 0| 0    0  3 | 0 0 0


^ v}L.W#g$E(D0

我们可以看到这里有3个设备号15,169和185.设备名和设备号的关系我们可以参考文件/proc/interrupts,这里185代表网卡eth1.51Testing软件测试网.{Y5xg y

# cat /proc/interrupts51Testing软件测试网 Ror)_%t+O-k

CPU0


Yg"m7H t0

0: 1277238713 IO-APIC-edge timer


3Wd&xD3_@7Cpb0

6: 5 IO-APIC-edge floppy51Testing软件测试网0Lg*Jb:@4NM1a(~C3n

7: 0 IO-APIC-edge parport0


/z(i4lMKw4J;f0

8: 1 IO-APIC-edge rtc51Testing软件测试网;Je0uJK3p1a&S(M

9: 1 IO-APIC-level acpi


yukoWti0

14: 6011913 IO-APIC-edge ide051Testing软件测试网:C3Y:Ps:m0O

15: 15761438 IO-APIC-edge ide1


p&w2tpR pc4?x0

169: 26 IO-APIC-level Intel 82801BA-ICH2


r$m(T0we5J0

185: 16785489 IO-APIC-level eth1


'pn)~M/B m [/x0

193: 0 IO-APIC-level uhci_hcd:usb1


o'E7^WWV5W3[2Aj0

mpstat可以显示每个CPU的运行状况,比如系统有4个CPU。我们可以看到:


5j4epxE#Z7G0

# mpstat –P ALL 1


t wXr5`0

Linux 2.4.21-20.ELsmp (localhost.localdomain) 05/23/200651Testing软件测试网M8u@B D

05:17:31 PM CPU %user %nice %system %idle intr/s51Testing软件测试网q;SgSy6C"m+AJ

05:17:32 PM all 0.00 0.00 3.19 96.53 13.2751Testing软件测试网;tQ5U^'~"F

05:17:32 PM 0 0.00 0.00 0.00 100.00 0.00


6VCZ e2_5x2su0

05:17:32 PM 1 1.12 0.00 12.73 86.15 13.27


5Tw}"V.a Yg5Va0

05:17:32 PM 2 0.00 0.00 0.00 100.00 0.0051Testing软件测试网-@(d!c SdY

05:17:32 PM 3 0.00 0.00 0.00 100.00 0.0051Testing软件测试网W!ABk~

总结的说,CPU性能监控包含以下方面:


u%M9Djb0

检查系统的运行队列,确保每一个CPU的运行队列不大于3.


2mW!J(X!Nb J+~-}0

确保CPU使用分布满足70/30原则(用户70%,系统30%)。


5O-o qH(^D9On`0

如果系统时间过长,可能是因为频繁的调度和改变优先级。


y8au&RaG/B@G0

CPU Bound进程总是会被惩罚(降低优先级)而IO Bound进程总会被奖励(提高优先级)。


K6Y$R|2Lu4{0

 51Testing软件测试网 XC2w1UEx;O6OT T

4.prstat命令51Testing软件测试网 { L o0Tp,~4U!O

要显示系统上当前运行的进程和项目的各种统计信息,请使用带有-J选项的prstat命令:51Testing软件测试网UrS{"f8WP4e#R.]

j/lu9xm8H0DD G0 
%prstat -J51Testing软件测试网|[*b{ q@
        PID USERNAME SIZE  RSS STATE PRI NICE     TIME CPU PROCESS/NLWP51Testing软件测试网1\4J"^(g`
 21634 jtd     5512K 4848K cpu0   44   0  0:00.00 0.3% prstat/1
 3f-MMm9i2d+g0 
  324 root      29M  75M sleep  59   0  0:08.27 0.2% Xsun/151Testing软件测试网!{Lo F#L9dhq#N
 15497 jtd       48M  41M sleep  49   0  0:08.26 0.1% adeptedit/1
 #HczSZ'f |]6Dd0 
  328 root    2856K 2600K sleep  58   0  0:00.00 0.0% mibiisa/11
 BN@Ps)N$F0 
 1979 jtd     1568K 1352K sleep  49   0  0:00.00 0.0% csh/1
 $@'Z&[c ~z0 
 1977 jtd     7256K 5512K sleep  49   0  0:00.00 0.0% dtterm/1
 _5f1?P]!eg:xo0 
  192 root    3680K 2856K sleep  58   0  0:00.36 0.0% automountd/5
 Wg8Pw9T {H4Q3_z0I0 
 1845 jtd       24M  22M sleep  49   0  0:00.29 0.0% dtmail/11
 7b(Z)W0z$E Rn"mV XA0 
 1009 jtd     9864K 8384K sleep  49   0  0:00.59 0.0% dtwm/8
 f%y6g"d!`;i0 
  114 root    1640K 704K sleep  58   0  0:01.16 0.0% in.routed/151Testing软件测试网MI5QY4U2ZFq#J
  180 daemon  2704K 1944K sleep  58   0  0:00.00 0.0% statd/451Testing软件测试网X\ Lq&Iug(z
  145 root    2120K 1520K sleep  58   0  0:00.00 0.0% ypbind/1
 V1d@-J6V)p0 
  181 root    1864K 1336K sleep  51   0  0:00.00 0.0% lockd/1
 r c0U iqP1j#K3o0 
  173 root    2584K 2136K sleep  58   0  0:00.00 0.0% inetd/151Testing软件测试网1t4Nh'~Ukd
  135 root    2960K 1424K sleep   0   0  0:00.00 0.0% keyserv/451Testing软件测试网sb8U%j.U:Z1{x
PROJID   NPROC SIZE  RSS MEMORY     TIME CPU PROJECT
 .E.e~a| R+V0 
   10      52 400M 271M   68%  0:11.45 0.4% booksite
 W p H QT JG0 
    0      35 113M 129M   32%  0:10.46 0.2% system
 #v%f Zd2lu T.ju0 
 
 0ux&M!TprE0 
Total: 87 processes, 205 lwps, load averages: 0.05, 0.02, 0.02
 !ytY\1gw1a/lAK0

要显示系统上当前运行的进程和任务的各种统计信息,请使用带有-T选项的prstat命令:


]+B"n@HP_.C0


e,lF8ClAqQ0 
%prstat -T
 HN2j,d[6Z2pg0 
  PID USERNAME SIZE  RSS STATE PRI NICE     TIME CPU PROCESS/NLWP51Testing软件测试网)FYK*xA;h y.|X4\s
 23023 root      26M  20M sleep  59   0  0:03:18 0.6% Xsun/151Testing软件测试网 }w:NV#Ye.}5~
 23476 jtd       51M  45M sleep  49   0  0:04:31 0.5% adeptedit/1
 Z7guV$J5@ Y+^e-J)m0 
 23432 jtd     6928K 5064K sleep  59   0  0:00:00 0.1% dtterm/1
 ,~ AM g1sF_0 
 28959 jtd       26M  18M sleep  49   0  0:00:18 0.0% .netscape.bin/151Testing软件测试网'i*CS1H:p ]
 23116 jtd     9232K 8104K sleep  59   0  0:00:27 0.0% dtwm/5
 4FUU*fVNi2fK0 
 29010 jtd     5144K 4664K cpu0   59   0  0:00:00 0.0% prstat/1
 H a(h8i/X T0 
  200 root    3096K 1024K sleep  59   0  0:00:00 0.0% lpsched/151Testing软件测试网e @y6kUf
  161 root    2120K 1600K sleep  59   0  0:00:00 0.0% lockd/2
 p7P2ve7F0 
  170 root    5888K 4248K sleep  59   0  0:03:10 0.0% automountd/351Testing软件测试网v$W3N U5ty
  132 root    2120K 1408K sleep  59   0  0:00:00 0.0% ypbind/1
 tS}/CDsT:b#l0 
  162 daemon  2504K 1936K sleep  59   0  0:00:00 0.0% statd/2
 &bN!Ht~^ is0 
  146 root    2560K 2008K sleep  59   0  0:00:00 0.0% inetd/151Testing软件测试网h'N&\ T(F!VJ?m
  122 root    2336K 1264K sleep  59   0  0:00:00 0.0% keyserv/251Testing软件测试网@,YhH,Zr1DM4s;K
  119 root    2336K 1496K sleep  59   0  0:00:02 0.0% rpcbind/151Testing软件测试网Ovc s*M\8J+[
  104 root    1664K 672K sleep  59   0  0:00:03 0.0% in.rdisc/151Testing软件测试网^!L,ZH3N6^
TASKID   NPROC SIZE  RSS MEMORY     TIME CPU PROJECT                    
 phT LR^TkC0 
  222      30 229M 161M   44%  0:05:54 0.6% group.staff                51Testing软件测试网GGCb q:w
  223       1  26M  20M  5.3%  0:03:18 0.6% group.staff                
 (Xyi U%D T m#]0 
   12       1  61M  33M  8.9%  0:00:31 0.0% group.staff                51Testing软件测试网8m-G;rs)Jb`
    1      33  85M  53M   14%  0:03:33 0.0% system                     
 DX_8Xc0 
 51Testing软件测试网 xxtk _xD&|
Total: 65 processes, 154 lwps, load averages: 0.04, 0.05, 0.06      
 'Uhc u)Q8}a0




注–51Testing软件测试网|F9L oL+c

-J-T选项不能一起使用。


 


========


linux查看硬盘使用情况命令

一、df -lh 命令

df 是来自于coreutils 软件包,系统安装时,就自带的;我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置;
[root@localhost ~]# df -l
文件系统                 容量       已用       可用    已用% 挂载点
/dev/sda3              4956316   3565088   1135396 76% /
tmpfs                   241320         12    241308   1%   /dev/shm
/dev/sda6              4806904   2523708   2039012 56% /media/disk
/dev/sda1              4956284   3529796   1170656 76% /media/_
/dev/sda5              4845056   2581484   2019388 57% /media/disk-1

可以看到系统挂在sda3上,另外还挂了sda6/sda1/sda5三个系统。

二、fdisk -l 命令

fdisk 是一款强大的磁盘操作工具,来自util-linux软件包,我们在这里只说他如何查看磁盘分区表及分区结构;通过-l 参数,能获得机器中所有的硬盘的分区情况;
[root@localhost ~]# fdisk -l

Disk /dev/sda: 40.0 GB, 40000000000 bytes
255 heads, 63 sectors/track, 4863 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x62a9f8d0

   Device Boot      Start         End      Blocks   Id System
/dev/sda1   *           1         637     5116671   83 Linux
/dev/sda2             638         891     2040255   82 Linux swap / Solaris
/dev/sda3             892        1528     5116702+ 83 Linux
/dev/sda4            1529        2744     9767520    5 Extended
/dev/sda5            1529        2136     4883728+ 83 Linux
/dev/sda6            2137        2744     4883728+ 83 Linux

sda1 是MBR(主引导记录)所在的分区;sda2是交换分区;sda4是扩展分区,包括了sda5,sda6两个逻辑分区。系统划分分区的时候只能划分4个主分区(扩展分区也算主分区),我在上面分了3个主分区+1个Extended分区,5.6是逻辑分区。所以才会有sda1.2.3.4.5.6。如果你只划分了1个主分区+1个扩展分区,那么逻辑分区就从sda5开始了,sda1.2.5.6...

三、cfdisk -Ps命令 (注意P是大写)
cfdisk 也是一款不错的分区工具;在有些发行版中,此工具已经从util-linux包中剔除;cfdisk 简单易用是他的特点;
查看磁盘分区的用法   cfdisk   -Ps 磁盘设备名 只有一个硬盘也可以用 cfdisk -Ps

例1:[root@localhost ~]# cfdisk -Ps
Partition Table for /dev/sda

                First         Last
# Type        Sector      Sector       Offset     Length      Filesystem Type         (ID) Flag
-- -------   ----------- -----------    ------   ----------- --------------------      -------
1 Primary           0     10233404     63      10233405         Linux (83)             Boot
2 Primary    10233405    14313914      0       4080510       Linux swap / So (82)    None
3 Primary    14313915    24547319      0      10233405         Linux (83)             None
4 Primary    24547320    44082359      0      19535040       Extended (05)           None
5 Logical    24547320     34314839     63       9767520        Linux (83)             None
6 Logical    34314840    44082359     63       9767520         Linux (83)             None
   Logical    44082360    78124094      0      34041735         Free Space            None

例2:[root@localhost ~]# cfdisk -Ps /dev/sda

Partition Table for /dev/sda 
  

                First       Last 
  
 # Type       Sector      Sector   Offset    Length   Filesystem Type (ID) Flag 
  
 -- ------- ----------- ----------- ------ ----------- -------------------- ---- 
  
 1 Primary           0    10233404     63    10233405 Linux (83)           Boot 
  
 2 Primary    10233405    14313914      0     4080510 Linux swap / So (82) None 
  
 3 Primary    14313915    24547319      0    10233405 Linux (83)           None 
  
 4 Primary    24547320    44082359      0    19535040 Extended (05)        None 
  
 5 Logical    24547320    34314839     63     9767520 Linux (83)           None 
  
 6 Logical    34314840    44082359     63     9767520 Linux (83)           None 
  
    Logical    44082360    78124094      0    34041735 Free Space           None



四、parted 命令
parted   功能不错的分区工具;在Fedora 8中有带,可以自己安装上;调用方法简单,parted 默认是打开的设备是/dev/hda ,也可以自己指定;比如   parted /dev/hda 或/dev/sda 等;退出的方法是 quit

输入parted命令后要等会儿才会出现下面的内容:
[root@localhost ~]# parted
GNU Parted 1.8.6
使用 /dev/sda
Welcome to GNU Parted! Type ’help’ to view a list of commands.
(parted) 

在光标那里输入p回车出现下面内容:

Model: ATA Maxtor 5T040H4 (scsi) 
  
 Disk /dev/sda: 40.0GB 
  
 Sector size (logical/physical): 512B/512B 
  
 Partition Table: msdos 
  

 Number Start     End     S ize     Type   File system     标志 
  
 1      32.3kB   5240MB 5239MB   主分区    ext3          启动 
  
 2      5240MB 7329MB 2089MB 主分区    linux-swap        
  
 3      7329MB 12.6GB 5240MB   主分区    ext3              
  
 4      12.6GB 22.6GB   10.0GB 扩展分区                    
  
 5      12.6GB 17.6GB   5001MB 逻辑分区   ext3              
  
 6      17.6GB 22.6GB   5001MB 逻辑分区   ext3

     

(parted) 
在光标后面输入quit退出。

五、sfdisk -l

[root@localhost ~]# sfdisk -l 
  

 Disk /dev/sda: 4863 cylinders, 255 heads, 63 sectors/track 
  
 Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0 
  

    Device Boot Start     End   #cyls    #blocks   Id System 
  
 /dev/sda1   *      0+    636     637-   5116671   83 Linux 
  
 /dev/sda2        637     890     254    2040255   82 Linux swap / Solaris 
  
 /dev/sda3        891    1527     637    5116702+ 83 Linux 
  
 /dev/sda4       1528    2743    1216    9767520    5 Extended 
  
 /dev/sda5       1528+   2135     608-   4883728+ 83 Linux 
  
 /dev/sda6       2136+   2743     608-   4883728+ 83 Linux

六、也可以使用   应用程序>系统工具>磁盘使用分析器   来查看磁盘使用情况。