|
linux系统该如何查看内存使用情况以及清理缓存?
7 ]. [5 c: q# u+ T4 V# P( ~: E; \4 f9 m0 G% [: f& r/ {
linux系统该如何查看内存使用情况以及清理缓存?; v3 O, w# U a
P! K. o/ \: Q0 G& \6 h* m
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。# t7 r8 A( c; p+ q C- }
9 c# I/ F) b: y' s1 u$ E1.查看物理内存使用情况的命令:free -h6 k2 J6 r3 R; x8 B7 A
) _6 Y! W( I$ @totel:机器总的物理内存;. M4 ?, m/ O, Y( y+ O; h
) ?% ^# C4 R% q, u2 U9 t4 B& I x
used:已使用的内存;
* U& Z* x! `" u0 {% K. X$ Q$ t
( v/ R% l* v0 J: K. @3 |; sfree:空闲的物理内存;
' x: j5 T5 J( J0 }7 e6 `
# k1 ]9 `; B6 L6 X/ H$ L! Bshared:被共享使用的物理内存;
4 I; n8 }# R+ K, T# Q; X
6 b& E. U6 N$ ^1 K: obuff/cache:可以理解为缓存;+ A/ W3 V2 \! ~1 _4 v
1 _+ b% @! _6 {4 P3 \available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。/ H5 G! W! X2 P8 Q3 D$ t9 f: \* `6 n4 _# ~
5 R4 H; e+ j4 }: o' E- w2.清理缓存命令:
1 @6 ?3 N6 [2 I+ n' t
4 K3 a B: N7 V0 L1 q* E# C' d decho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
8 T! n" A& M/ j# V# H$ t) U1 o" ?% x5 d# v9 p4 f
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
; P# N9 C' y) b
( y- L' \% f3 A. d4 O( L9 qecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
0 `" v( @7 d4 v7 H* E: N: X8 J' v
( m" T, p$ L* N% L8 \# G* O注释:
4 C1 ? G# H% ?- S l6 A% M+ p
echo 0 是不释放缓存
$ [% h+ A$ Z, M* B q, S; r# Y5 ~: ^- l5 _- Y) J! `6 A
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
+ E& k a/ k5 ^0 S- @& t- a
. E' t/ K$ y) `. E7 s2 P3 R4 xehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存), w+ x- S. ]' t; J1 x" H6 ?; R5 h( a
, B& S; k8 F5 n1 `* t! a/ Z
echo 3 是释放 1 和 2 中说到的所有缓存
# n# T1 r4 U; G+ f, M3 l- ^' z
5 J5 X! ^; Q* `) q8 E" D% @9 O4 V/ D8 `/ W5 b9 x r# d8 K
0 D9 D" S m& I% b4 X" S
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|