|
linux系统该如何查看内存使用情况以及清理缓存?' `/ \9 d& ?7 G* @) |; o! }
6 R& H8 F) E& N" ~
linux系统该如何查看内存使用情况以及清理缓存?
# V5 r9 m3 a2 E) k
n6 x! j; ~8 u7 J: j有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
d5 n- ]7 L) M8 v8 y; S3 `9 H8 C1 m3 _
1.查看物理内存使用情况的命令:free -h- h' y1 V2 ^1 ?* B% l4 Q7 H
: K/ X8 _' B) z+ Utotel:机器总的物理内存;
' z5 R9 R% c: ?/ ]- ^; i; c+ z, g8 `: [9 T
used:已使用的内存;+ m2 `. U, T5 M' D
3 ?* X2 ]* ^7 U, {, F
free:空闲的物理内存;
; M7 M1 A8 S8 O# W6 W; h b) p# t0 c# D8 N
shared:被共享使用的物理内存;4 y" y. ]$ V* u
4 @- q8 X& t5 T, T. ]) N. j
buff/cache:可以理解为缓存;
6 K0 U: b9 J; T- S$ y
9 k8 i4 O! i6 o' S4 ?available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
; F: s0 H8 ]( o, f+ I& g
. L3 d, \) Y. m3 H$ X2 p2.清理缓存命令:( y. m( _: E1 ~! q8 F, M/ I! L- R: q
+ T8 h* u0 g1 {" K( s
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存: y- m B& ~- _, S1 t/ f0 ^# H
/ j, U4 U2 j j1 L5 l4 \( x1 E
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存5 m, u x8 ? m) l
- j" ]/ ^4 ]$ ]5 e+ J4 pecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存/ a9 b1 w* k4 d
* M# X# n4 d% P+ G
注释:
2 g" y2 X' E ^/ B+ N
6 r/ A/ C u% A) V; [5 Xecho 0 是不释放缓存
( y* c7 U& y: B7 G. W% H, W1 V1 s- _) r' A( g8 L
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
, t' _$ r- X7 g$ i. q/ M
/ u9 H6 D9 g0 Y8 iehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
, I( f) [' a# R- ^. V6 S Y p
4 K. E9 g) `2 m" W9 Uecho 3 是释放 1 和 2 中说到的所有缓存( l+ h2 Z* D% T" r& Y
# ^" @- s& g$ k b/ D0 B5 s5 w( s" H: z" K }
0 S' ~' A# a& P; I
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|