|
linux系统该如何查看内存使用情况以及清理缓存?
% ^" c4 J. m2 v; }7 K" d; Q4 E
linux系统该如何查看内存使用情况以及清理缓存?
9 j; |4 Q% ?' H6 E, i+ x$ V
. d9 ?. a3 `, [. ]- ?0 r+ y有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
, X! E3 s N e
) w4 z3 R, {# y, K& N! N& V1.查看物理内存使用情况的命令:free -h
7 M0 A6 K8 o# L3 r% M, d
6 v9 l: s( |- [! Ttotel:机器总的物理内存;
8 k" j8 [; w% u( y: I/ U; x0 P8 ~ p) l# \% w# W0 l
used:已使用的内存;
) y5 A( H* z& G* m! A- y
+ O, v8 n" g% ffree:空闲的物理内存;
* @$ v* w4 r2 I4 B5 }# O6 J8 U! g4 a( B4 h7 A8 ]1 L
shared:被共享使用的物理内存;2 S, a# i2 R) e7 \
7 M0 ^) |& M. w" {) U* w4 M
buff/cache:可以理解为缓存;
" X; B; k: ?; ?( B) m7 W! _. v( ^& w8 F
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。& M. L6 T/ V, L9 j, o% h# @
5 ]& G* i) @% O j8 ^2 G$ D
2.清理缓存命令:
6 x4 v- Z; i X+ a r
, \3 h- F7 O! _" s) [; I1 techo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
/ j0 U B8 E# X' U! y2 C- }; b+ f- y
3 r4 `; k! j- secho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存3 U9 r) n5 { s" Y; r
3 I; Z% y9 j0 @
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存7 E4 j/ Q6 |! }9 n5 J
! {8 I" r/ e6 {/ L2 ]! U. i' X* z
注释:9 q7 d9 }" L4 q
1 M2 m# b6 j5 a! j! J$ Q2 k1 [; ^
echo 0 是不释放缓存* |4 T) _' S% r) C
, [. j R* M8 A. f8 yecho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
/ y4 H- y, T' ]' N. y) I) ~3 u$ M3 G: q0 e; |& Q6 r$ e
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
! k$ z9 `; y, p3 R4 v5 D5 \ y+ B" R/ o3 ]7 d% `0 B$ Z& y. L
echo 3 是释放 1 和 2 中说到的所有缓存- b& [ W: \1 y# j
8 r2 u* Q, k1 u* Z2 v% y! W8 I7 i- |
7 F3 _3 h* X# E2 ^) }原文连接:http://www.szw86.com/thread-8891-1-1.html |
|