|
linux系统该如何查看内存使用情况以及清理缓存?
$ l* }- @" E/ u) T! ]; ^; j2 R$ y( r6 \! u {, R1 N
linux系统该如何查看内存使用情况以及清理缓存?/ l9 q- _/ i5 \7 a6 |0 \" D
9 d% G% ^6 w m9 |% s% b2 ^' _有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。6 E" {: _6 ~" K, y' a0 t; ?: B
! @; g( w* q( s5 x: D1 I" ^1.查看物理内存使用情况的命令:free -h
: U5 I4 T. R$ V2 o
. H ~0 r8 S( \6 `% w* Xtotel:机器总的物理内存;
' p6 L1 m4 ?5 m0 J: Z: x# B: `1 A: N8 S% t4 L% e- n0 k" m+ o
used:已使用的内存;
5 J E5 E0 N& b) ?) b) ?9 d5 d3 B$ B# g$ ^" M
free:空闲的物理内存;
5 A5 i1 q4 p6 L- j
( F1 e" B; }: M) A- s& }7 Tshared:被共享使用的物理内存;
+ a" L8 ^% ^6 G: m" W1 [
. V+ L6 V# u. K& ]/ r$ `buff/cache:可以理解为缓存;9 A3 P( `7 @* n
C1 H F/ \1 G0 r8 G( Bavailable:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
: ^: ~. ]: {6 V3 {7 v* ]; z
3 p$ B5 k2 f4 b) X2.清理缓存命令: n1 z0 u2 c7 y! K9 Y9 l( k
2 l' _) R1 b% C8 Necho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存 }2 P( V' \2 d; R" }2 Q$ j1 | k% |
. T1 g1 F4 [( m8 O- Eecho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存0 {/ K2 ~7 l& Z# r
7 U1 o4 u$ ~; k9 l" decho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存% h& m1 ?" R R5 h+ n4 U) l. ]( m
4 a. I% M& Y1 e7 ]注释:
% a# w6 i# j0 i. o
8 c. D" F' t8 P1 A6 Cecho 0 是不释放缓存
- S" a: a& `" _4 ~& F" J% P9 I4 B8 b: l, B) U3 M; |
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)2 c2 B+ o2 y$ l6 M8 G
; Y; Y! U# Z* `5 ?1 [& u/ mehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
0 D3 J2 P5 u1 n6 q: q7 d! p5 ~
0 Q4 x0 J/ r4 K% j9 r. Jecho 3 是释放 1 和 2 中说到的所有缓存
s- d- m( X5 _" D% Z V0 E: k- l6 j; }* a1 [
% b( t# Y8 _- _9 q$ K6 ]$ N, O$ q4 w4 v9 i6 R# Q0 l5 W* S
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|