|
linux系统该如何查看内存使用情况以及清理缓存?
+ A. b5 h0 s# Q" t9 u. V6 V) ^6 p
# h4 D- a+ ~1 [8 X) h8 Zlinux系统该如何查看内存使用情况以及清理缓存?4 Y$ [+ i& ?" R+ n3 {, f: M1 g: e& i
- S3 W) c" f( `9 a& v0 g! ]
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
5 B4 x' G" j/ s* `( w& g" H
0 ?" Z* `8 X7 L+ s! L: N1.查看物理内存使用情况的命令:free -h
/ E# p8 ?1 z* m5 e, A2 S) s6 X
; u- V4 l# r- K4 q3 U$ G" Htotel:机器总的物理内存;: y" Z! l+ T7 ~8 W' ?
+ r9 @' j4 {' n1 I
used:已使用的内存;- b9 @) x; a m0 R$ i* c
! e/ e2 ]" ]6 K! U) Jfree:空闲的物理内存;4 G! D+ H& u; o, |
, S3 m2 |% q! B0 U0 x' g q8 A, U
shared:被共享使用的物理内存;
& u; V, |3 J( P& J; m) Q/ _2 i* l& H# B
buff/cache:可以理解为缓存;- L. |0 D7 r. o( z
: @/ o' B: j% C+ ` {6 d" S
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
5 i) ~9 P$ q# v Y7 a
0 K% p0 l! l# w3 Z2.清理缓存命令:: o5 S- U/ g# r$ |' g: r4 Q
J! M5 m4 |9 X- ?9 ^
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
, n! ?3 L* C& w0 p* ? X
4 A9 G' x! ]# m% p4 P2 Necho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存3 r: j0 E" D8 D. B8 g: y- t, X0 N; G
: m2 @/ B: i% X! J( C3 G4 ^echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存, L/ H$ \* ]& g, S" ~4 J/ |
+ I8 {4 H% W/ ?注释:
- e1 r3 d7 H& T" k9 R! e4 k+ Y- J W
echo 0 是不释放缓存8 W6 @4 t! c* z. [, E/ c( W1 f
( E* o+ r( V( `echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
2 A Z) P% B+ T# V
4 a# a3 y0 N# e/ F/ ]3 Uehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
/ g& u; y* U- g6 U1 m7 V$ F- H
3 _! `6 F6 ?7 I7 ]' u: D' Iecho 3 是释放 1 和 2 中说到的所有缓存: F' P5 w, N! ?6 n! P4 P
, }# D7 P& [+ o M) V9 Z
" p! G" X$ M* |& O. Y$ e5 ]
; D6 W$ m2 V0 c8 S原文连接:http://www.szw86.com/thread-8891-1-1.html |
|