|
linux系统该如何查看内存使用情况以及清理缓存?% G. U H6 `6 ~* m+ [7 _5 T1 R$ T
: j, M3 u7 J- }7 e3 v% J7 Q0 ?
linux系统该如何查看内存使用情况以及清理缓存?3 t- u" M' Z# d5 z
$ { O" j% E) c
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。$ n: e8 O& B- J# R" j4 i
; H V% E- q, M6 k9 V. I g! |% H
1.查看物理内存使用情况的命令:free -h
. T4 k. V" p y
8 P E6 C; ?( d' xtotel:机器总的物理内存;
2 S- Z- r6 B# O& P1 e4 t' x1 \! [
used:已使用的内存;* V) F; t! y, i' J7 z- O; t1 F9 D
7 o: ?& o6 p( Y0 O% ^$ _8 V
free:空闲的物理内存;
) |& d7 [+ Y& ~7 Y: {8 _+ ?7 [) p
: R' M! r% W1 [! W9 m- @shared:被共享使用的物理内存;
+ e6 s1 b( K8 \2 i3 `( A, h* H4 f" V2 W4 S9 G$ J( }' N, n
buff/cache:可以理解为缓存;
5 P! ]6 E* Y7 t. C) A: _- V; @; r N' Y7 t
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。! t2 a! L& F0 M7 ]2 y- g/ k
! S+ i% y# w; U& g
2.清理缓存命令:
! ~' U' \, s' _0 n
7 ^$ h0 i* r' `5 U. L7 Secho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存0 c- Q' i6 J* m
" y" v% t% Y* K6 X% e- s
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
, }6 _) |- Z6 ~2 d; g% M" {6 G. B
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
" g& `. p& c3 x
+ M! N# ]1 j6 M( q: ?; c% H9 `. W注释:
* i/ w! ~8 H3 K5 ?4 W9 e! P, [* |6 ~+ ^9 y& ~1 l5 e3 x
echo 0 是不释放缓存
$ p) o X% e8 p/ F/ V1 U6 `( c$ j2 n: A2 `
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)3 M0 K/ G* B% E' ?& ]! `
! T5 d; N. K3 k) `( h Wehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)0 T1 ? h. b$ E ^' j2 p$ Z6 d4 \: l
) q, H4 o- X: D Techo 3 是释放 1 和 2 中说到的所有缓存
! ` ?3 o# Z4 U& Q! m' ]6 o5 G9 K( |% y
' I0 t5 u0 G% h. K( p' D! X) a( {$ s3 V0 A: S
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|