|
linux系统该如何查看内存使用情况以及清理缓存?1 O- n7 j- k3 Z: y1 V& G# t( g
' D4 p; L4 E& O4 L7 v+ [linux系统该如何查看内存使用情况以及清理缓存?
& }* G7 s2 [3 B( J0 s" Q/ q( F8 |% [8 [: b' }0 S9 L9 P
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
1 a2 o# ~8 d9 x, e9 @0 r8 Q* T1 ~6 g/ F# `" @5 ^# b
1.查看物理内存使用情况的命令:free -h
! k( t. t6 X2 N9 }; Z- o$ v0 F4 S% D1 }
totel:机器总的物理内存;" d, j( c" G' J6 J& ?: T& t# T
- y' Y m: x; e, }; E4 b) R$ o# |used:已使用的内存;% \3 w* H: v3 R6 s9 }' d" m/ g
( Y$ K& Y3 j( q! X( L$ O, C
free:空闲的物理内存;
: X0 T3 E' v3 B1 z1 g, M3 f3 I! V$ |1 d
shared:被共享使用的物理内存;
8 J% x9 V4 j( x/ r/ L8 f! p g# d" y4 L6 m
buff/cache:可以理解为缓存;
3 A; D+ E2 t# |. D5 T" l8 q3 o* c$ o7 {5 h# m0 E% J3 ~$ F) Z
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。& e+ C) m5 y. m6 O' a& X% J3 @
_$ x# S: `: x2 R- S
2.清理缓存命令:
2 ?5 G$ Q1 v' z7 H8 E
$ z" k- L. L5 j: k$ t. N' P/ [echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
R- Z2 g- e, ]$ w. v! ~) H( b" w$ @# S+ S- a
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
, j# g1 S2 L' k/ q6 ?
; }* }# ]0 V- T5 ~5 ?3 decho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
0 t7 U. O$ }& `# W
, `& S. q+ m* r( m& z6 M5 N( g2 f注释:
3 q: O0 r# N: q, M; ?# x6 W8 v; f) L' {. f6 L/ M/ _
echo 0 是不释放缓存- }2 c+ T3 M& e) ^" h7 F( K
# N7 @- W3 z9 |! p0 Q' L8 \echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
, G) c1 u, `5 |9 E
3 e6 Z/ ^/ p; W! A" F8 X6 \ Fehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)* b1 X: X6 W) K7 Q- P8 u9 |
8 A# C$ @" |+ E+ ^echo 3 是释放 1 和 2 中说到的所有缓存
1 A0 l7 R& `5 Q( B" T* Y9 K8 h2 Q
/ S* Z5 N9 m0 u5 D/ s0 A& L8 [0 l9 d$ Q) E
0 F4 [& k- t9 u3 o
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|