|
linux系统该如何查看内存使用情况以及清理缓存?
( |# a/ {) K: [. E1 O8 p% Z D
. l5 q6 |( x( _/ @4 } i0 jlinux系统该如何查看内存使用情况以及清理缓存?4 c/ e( I( r4 D5 L: g- t
3 P% D& A; Y# M
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
+ T/ v+ m+ T2 g5 H0 p+ Q9 p" ?% X- x2 ?0 t) a) T K" l# U
1.查看物理内存使用情况的命令:free -h
: \# R/ h' s: U* e$ v1 S* e1 }: }6 C* a, C/ l( z
totel:机器总的物理内存;* m# {0 c! w) ?/ @
6 X4 s, N% f, N: ?, T- S$ ^
used:已使用的内存;
" T; R( Z0 p$ H: u& k
2 X1 h9 D) p, }3 J6 lfree:空闲的物理内存;
6 k& S$ ?0 H! f( t0 G" K2 P' W. z8 [
shared:被共享使用的物理内存;
( u' c r& M: r' ]& K
. o; k% E$ A1 S3 H; _buff/cache:可以理解为缓存;4 I3 f4 q4 X% h" W/ M" [; u
4 [$ e6 u) J( l$ T' |( ^
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
8 O! e: H* D |- P+ v( k: M# t/ y! o4 ?% f( Q/ ]* g
2.清理缓存命令:
; Y Z2 o0 Y6 I: O9 e3 f
* s2 _9 O+ c o8 Hecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存: q Q8 u1 B* [. [% S$ s! S
6 z3 Q" L5 q9 g" b
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
8 O% e0 D5 f0 O- K/ J3 W
6 r, a* W9 l7 z% A. iecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
/ I9 Q( D8 j) s( H. g' o3 T) @, {- w; [: A9 F3 W& z1 s
注释:
/ c3 }4 R) N" u: d5 `3 p) E1 i6 V2 T/ [ H/ S2 [
echo 0 是不释放缓存
. t9 L: b4 @1 Y' Q( \
1 e3 j8 w! k9 A7 N6 e1 x8 Aecho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)- }9 N+ t, T) I6 n6 q8 o- l
( x4 k5 D- `* g9 d6 @2 P) f) G
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
) d S5 E: B7 v2 k7 K8 b
5 s0 H9 }" M! \3 b' E* m& h. w; ^% [echo 3 是释放 1 和 2 中说到的所有缓存
" s3 ?* }6 {2 j3 t* `" c: } i% u; R+ b. h
0 m! }, s0 u! x7 o0 \- u' R
8 h% _6 N' X s% J9 j' U
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|