|
linux系统该如何查看内存使用情况以及清理缓存?
# s f& h" Q6 c( U; Y- L9 e! s* `- @3 g0 N* M# t
linux系统该如何查看内存使用情况以及清理缓存?
3 i$ t* q1 V# S6 c; F# G
( U& ~6 L* w( K& q9 f, b! q, A, G有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。' \1 d6 P4 `% t! U5 ?
% b, A+ ]2 \3 X9 @6 r
1.查看物理内存使用情况的命令:free -h
9 d b' D9 C# N# W4 q3 F0 ^8 [. q+ }+ X) @+ @
totel:机器总的物理内存;
; ^* R N+ O5 A! J {( m9 i8 p7 F% ~& J
used:已使用的内存;8 J1 T5 ]7 J1 ~* }; N5 I
9 I' P# d! I2 l, h% T
free:空闲的物理内存;+ h9 y: X P/ y$ @0 z
6 P) r* S2 [5 i) Q L- k
shared:被共享使用的物理内存;
+ n: i" r- V' Z9 H+ D2 o& c0 [* `* |7 m2 t# I. {) k# G5 M$ w
buff/cache:可以理解为缓存;; X7 F; s x8 v# L
9 }% S' q# O/ w0 Aavailable:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。; i: L0 ^" Q' i* }1 o
, C) z8 k A! B7 V! u5 W1 u% _
2.清理缓存命令:+ H; U7 b. f x& z( Z# v
7 n' ?6 P, [* A6 V b1 T4 n: Yecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存# S9 L A6 v1 |3 v
6 f s5 b, |8 Gecho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存; P. E3 a0 v, ~% J) J$ s. p
. [" J' L: m0 l* ]: m! d. y5 _echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
# ]' J& `" L1 z
0 U0 A' I( I4 C6 f& N6 w5 F注释:5 u7 y; T+ ~, {) J, C' s$ W( {( @
9 d- U' i2 s' ~6 b: j/ z/ \" n
echo 0 是不释放缓存0 w L6 T T1 x e" l
! B3 }. U" }. |2 `7 V1 w, wecho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)" X* P) q8 n8 P
% x# V8 i1 s8 \$ f ^, K( Lehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)5 l5 \: x1 V8 w5 w1 W' D' x4 G
$ T& n$ |4 S0 ~0 {) {echo 3 是释放 1 和 2 中说到的所有缓存
2 m" _; n+ u% V+ i$ {' t* p3 z* G5 A$ n( w& ~4 p
& \( H# o% ]. ?' v- T8 I: B, X( y. C) T' R; }
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|