|
linux系统该如何查看内存使用情况以及清理缓存?9 q9 x7 b; P) T: W
8 M7 U* t. J5 x7 w* w2 p) _
linux系统该如何查看内存使用情况以及清理缓存?' T8 r' [0 |' v; N' [0 Y' a7 N
% r( v* `5 {4 v* x; g有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
) a" e3 p! Q6 w( v. h r
5 A7 }3 F( p$ v! m& m* V1.查看物理内存使用情况的命令:free -h9 L3 b6 B) E" F' J9 u- h; g- A* ^4 n
# K0 W( Q3 C+ _9 {9 r
totel:机器总的物理内存;
; F- G3 M( n- E# V5 K1 v% K' b7 _" |! z3 Z: ^
used:已使用的内存;
: ]0 w$ `$ X; _+ ?" F& `
- P s4 C- n( w! sfree:空闲的物理内存;5 X" C* C' N: E" ?) X' Q
1 F) C) d1 o, ~4 U1 A3 C6 G+ ?8 w
shared:被共享使用的物理内存;
$ Z: c5 V2 f# @2 e) F4 M
# H) M1 y- @! m% {buff/cache:可以理解为缓存;" M% B& O9 S0 Z5 S. o
W% ^& D; `" m8 Z/ v! k' L1 H4 ^
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。4 A" k; E" J- A
$ D8 |/ b' [ O# m2.清理缓存命令:( I9 ]4 D3 W3 _0 z5 w Z( f
+ M! F& }- z" G3 o; T/ v- u, d" Iecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
1 h0 ~& g4 t3 v3 O4 I! l7 @# C! G6 y8 b l4 \5 _8 a; }; X f
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存% q& x1 q! T4 R& ]5 y, ]
4 J& d4 s; {' H, A, a$ ~+ U
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
* o; C6 L! d& S4 ~, {& x7 E: U8 u7 ^2 S+ ]1 q1 L# U- ]
注释:
; b' ]7 O& R, R3 s) F, H3 R. V9 y) }9 k" }+ _. |3 V
echo 0 是不释放缓存 q% O. q$ s9 s4 S* ~+ G! W
# a' V6 m) H$ p! f. B* \
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
1 l. E' P6 Q3 V1 B5 j9 ?; T9 h! X3 a0 R
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)4 b Y q0 J1 U4 a# @; V
( p# r' z d: g+ B$ }& Z3 ^echo 3 是释放 1 和 2 中说到的所有缓存( Y8 o# C, c. V: E9 i
$ o A( F) C/ n2 E/ g& X) N$ a* {4 G# m3 x
' n( C2 Q( |. _7 h7 l
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|