|
linux系统该如何查看内存使用情况以及清理缓存?
6 P& ?& }4 ^' V3 n" v* Q. a( m
+ f4 ~7 d- p; S; H3 N9 llinux系统该如何查看内存使用情况以及清理缓存?$ u/ q2 [5 T3 c: W6 S3 {
! v& p$ q) S4 ]
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
- n& x5 f4 k* U4 i$ d- e& u* D/ k' I j" I, d5 @
1.查看物理内存使用情况的命令:free -h
% s8 n3 P$ Y7 q( w6 d& w! H% j
totel:机器总的物理内存;2 t0 W- O z$ D
) _0 B1 S7 S. l8 z3 J {
used:已使用的内存;
+ q1 f0 k* B m' O; ^( M5 O, |% N4 Y- X: N7 c, a
free:空闲的物理内存;! P& I! ~! V4 \8 I9 I8 k* K# D( ~% b
" ?1 u: ]. t6 O' R" v/ |* ^
shared:被共享使用的物理内存; l: G( P+ ]7 q0 \6 A" ~$ I* j
! {( q# \: l# H
buff/cache:可以理解为缓存;
- @: j+ p7 I+ p3 e: k
; c( ^1 q2 N8 [: W) [& |, Z2 }available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。5 t# m% ?* r7 J; `/ h; h
! W: ^& P0 C% ]
2.清理缓存命令:3 u, W+ ]% D9 @3 Y5 r$ g# {
. m7 i8 d# A! u" O
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
; Y$ A) @* q* {- K7 S& N8 r+ o# q. \
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
0 @! h( M9 [1 m3 z( z: a# y+ t' T3 k$ b) L/ }, G$ k
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存1 o- R# B0 q5 _6 f) B! e
6 {2 X }! O1 G! _) j$ d
注释:
, n; _8 C# a- n: T$ G3 f, B! ~& Z
* X7 C8 v; Z* l8 m' Y7 s) R9 X! q, G- |echo 0 是不释放缓存& S2 Q/ T0 E0 U' D4 R6 [
4 r" R9 [$ M# H# w
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)2 D8 U$ N0 c5 F" D9 D" F
+ u* l' x, Q( v# g6 ?7 lehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)# D1 \; a2 U3 i6 J. M4 v8 ~
, A7 d! R5 _6 f5 j! X' b; @6 Wecho 3 是释放 1 和 2 中说到的所有缓存* j/ Y @) g; }4 {
9 I$ m2 q& ^/ W4 e+ _
3 F0 R Q3 y/ u7 b5 D R% E, ?( U- s* {
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|