|
linux系统该如何查看内存使用情况以及清理缓存?6 k0 Y1 q* E4 ?3 O# Y; u
# q6 i+ b$ Q) b* t( F& N' o
linux系统该如何查看内存使用情况以及清理缓存?* O9 h* {7 i0 Z% S3 `# F
E, P. K' F3 X% e+ [有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。* o1 @/ }- N- E
; f3 O" P/ a4 |0 [$ Q$ ]" g1.查看物理内存使用情况的命令:free -h5 ^' \, V+ L' `2 e0 ]
# p$ G8 }4 w6 Q7 Ftotel:机器总的物理内存;8 Y" {$ s& L7 D6 ?/ O4 L
5 G+ m( y7 Q; A" k! L$ O) `. ]used:已使用的内存;' f! g) y1 j0 `/ x1 z& X
) P; _- o* C9 O, S
free:空闲的物理内存;
1 c" K) U+ V+ u0 ?- @* M$ ^4 U& Z3 y* X: u( o7 f, G
shared:被共享使用的物理内存;
6 [# q7 Q: d0 v
7 ?# k* e6 \$ P2 l- P: h! mbuff/cache:可以理解为缓存;
4 \$ A& Q7 c( [+ a o. R! D
0 F7 X/ E9 B* [# b6 ~" l xavailable:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
3 X% @: b( \8 c7 x. I# z/ G+ H% x
. Y0 v7 R8 Y5 H) W8 E& f2.清理缓存命令:
2 f7 g* z% c+ ^
5 @. s5 [6 E3 i% x/ Wecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
& O2 ?# g5 H4 F% S) [# }
! x; {+ y) a* E9 b% ^echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存+ c/ T o. ]& Y, I
2 N A, H5 g1 S& r* @" b8 G6 F3 Eecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存: p! V: r3 l5 u8 w4 Y6 [
; |7 c7 M3 q; O+ I2 A) T- y2 |
注释: k; {3 u \. \, J% G
1 O& Q. h7 Q' [7 {( Q6 s
echo 0 是不释放缓存
' K B+ s6 \2 N# I
2 I6 E. u: y6 x: Necho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
+ ?3 D- {5 ~& c- U$ j* t }+ s( C, \' S' M0 C
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
% I& P: U m1 b r: |
. \# j7 P- B6 N2 G3 U: Cecho 3 是释放 1 和 2 中说到的所有缓存
* q+ u; _) G! }( H2 @% n! \) c) C) z* W2 H) H& Z) k+ N$ D; Z0 A b
& }7 n1 ^: Y3 a
. M* w6 w: f8 t+ l! K) Q原文连接:http://www.szw86.com/thread-8891-1-1.html |
|