|
linux系统该如何查看内存使用情况以及清理缓存?! h8 k* a) O; R. Q: O4 C
% S5 d% f+ O- C: n3 H' o* u( Y0 M
linux系统该如何查看内存使用情况以及清理缓存?
& F: `( Q5 Z6 ] a
* F. W6 O$ ]7 c7 O+ n有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。$ l* X4 K, y8 U8 T& E4 T
* Z, v, O2 j# ^, M; O1.查看物理内存使用情况的命令:free -h( E8 g" ^- Q2 E% j6 t
5 ~8 }; Q0 N& {. |' n5 ptotel:机器总的物理内存;
6 Z- _: }0 A2 T) U! D9 m0 ]$ b# i/ x; U
used:已使用的内存;- | j% T" U( Q3 j4 D* {
. Q8 s# j0 f; G/ e
free:空闲的物理内存;
- N6 Z- Y A0 v6 R0 q! a
/ Q3 ?5 ^) l) l% B0 X5 Zshared:被共享使用的物理内存;' X5 I; m3 h" v
" {$ ~) \; T# ?5 {9 u- b
buff/cache:可以理解为缓存;
- {6 _- D/ L3 {4 l/ A0 @4 ^- o7 i; P
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。! ^9 t- d, E+ I5 T/ c! _! U
" A9 m4 d4 h. Q( n' T2.清理缓存命令:: @$ z& i& ^5 g, t5 x
( J$ \ `' z% H+ W$ zecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
: K6 M5 f) f3 U
4 W {2 V( C6 Secho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
6 G, I4 ~" K8 n# B" F" ], W2 y/ F6 |3 z8 P5 B8 R9 ^: k
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存& f0 [6 K( ^9 O
5 g8 J3 N( {( |% W( y9 ^0 ~注释:( q; j0 e, l i& _
2 e- @) Q6 }+ y6 vecho 0 是不释放缓存3 Q; I+ w6 z3 `4 n6 x) W" I
% Q0 ^) v _ C9 z! G$ \: Z
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)- @; \2 j" h/ I
7 U2 f1 a6 T d' R8 X0 e
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)4 T" q9 n; d( u* B- i
, o& s$ C/ ~4 |1 ?5 A$ ]6 s: o" R
echo 3 是释放 1 和 2 中说到的所有缓存6 k$ z7 G5 |1 ^8 A# ^4 M* ~: C7 F: R
; [% |: M$ r. j! U+ n; u
. V( T6 L9 q T8 V" ~3 D, Q
( a+ n- J1 h5 q
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|