您的位置:首页 > 运维架构 > Linux

linux 查看cpu和磁盘使用情况

2011-12-21 09:17 435 查看
http://www.51testing.com/?uid-139579-action-viewspace-itemid-142106

http://www.51testing.com/?uid-139579-action-viewspace-itemid-142106

查看( 1440 ) /

评论( 0 ) /
评分( 0 /
0 )

1.top51Testing软件测试网brw1|0}+a4y?
使用权限:所有使用者
&hwO*z-@(A(\7a.d*NP$\0
使用方式:top [-] [d delay] [q] [c] [S] [s] [i]

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
另附一个命令简介[b]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

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

原文出处:http://www.01ruodian.com/school/news.asp?id=5708
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: