|
linux系统该如何查看内存使用情况以及清理缓存?
( @& A; k7 W+ l* e0 `/ C3 S0 [$ H& \# H
linux系统该如何查看内存使用情况以及清理缓存?# N. W( l6 X1 z2 k0 u* o" w
" _. B- c; q- e% N: I& f; n; N有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。, r- q2 X8 j0 C$ n; q
- f& w; z- ~7 X5 o
1.查看物理内存使用情况的命令:free -h. G3 j% a6 {8 T0 |
9 @, x, o: B2 c# S
totel:机器总的物理内存;- u# b9 x8 I8 S* M1 _
5 J6 E0 B( Y: L! a, {' L. i/ J5 o6 `used:已使用的内存;# O9 \: X X1 @. E
: D q5 L* H1 t+ L3 p) Ofree:空闲的物理内存;
- ]7 B! O" K, M
( a4 _8 ?+ O8 o; m m( Hshared:被共享使用的物理内存;
# U L- h$ z5 q. B8 r/ ^0 d0 o4 i7 K( G. n0 T
buff/cache:可以理解为缓存;
* g& o% O) G5 T7 L' W4 o& ^% ^1 R, a1 j5 B6 v' C) a+ T) F. n
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
3 s. w N* d: a. I& u' p2 \! l: s/ g4 z4 R+ _
2.清理缓存命令:9 b+ g5 ^6 ]8 p2 g8 B
7 w) ~: o6 s# I# M H i
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存9 u" Y4 n' y0 K
, X" L1 w, W) s/ U: e+ Pecho 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存- s& P- w5 c# i+ x9 h' z
- U3 F" U% m' k7 J* T6 m2 r
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
3 K6 \2 }0 N5 O& n; m4 F
# ^ T" o3 x* J( x9 H( \注释:
; }& K/ N9 j- D7 R1 N/ c# j( }( {& N& Y; i+ ?+ I- K5 L
echo 0 是不释放缓存
+ S6 H, J& u. f" m+ J+ F I
+ ^2 p( H& H8 R! k$ R0 ^echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
+ b$ H8 ?- J* T% J' H) `/ \9 T. |' f& Y: f/ Z
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
1 a: d. b3 L k) n. b8 |6 [
* n7 t" j( H+ c8 Q2 qecho 3 是释放 1 和 2 中说到的所有缓存
/ B5 _5 Z# H7 |* S% i) J
6 R9 O% P. _: v# [
. T. A1 e6 ~' g/ u( C0 C9 i8 ~3 \& m; T# X6 I
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|