|
linux系统该如何查看内存使用情况以及清理缓存?
& j8 Z2 ~- z1 h
- C0 Z! z# M$ i; D# v$ nlinux系统该如何查看内存使用情况以及清理缓存?
3 \/ p8 _7 @/ H, F" f G$ o8 h" P. I- T I2 [4 h9 U( m) Y
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。, z, Z/ o& J0 q' r) T& k
! c. [$ f6 U6 r9 o, m7 b1.查看物理内存使用情况的命令:free -h
0 Z2 y* K) X T8 h. ?; Y8 o5 K9 Z* ^% s' A- k9 k! n
totel:机器总的物理内存;
4 z) J5 i0 |8 n$ b8 h; \0 W
2 Z7 {! C! K! Nused:已使用的内存;
4 t* ?5 I9 H1 q0 w$ a! o! S7 }/ F
- J6 S! o7 f: T% O2 _free:空闲的物理内存;, f S- g4 a) [7 j9 i' g) [
, K7 J$ U3 f, I2 i, ]" c
shared:被共享使用的物理内存;/ {" {! k5 h' h- k
& l) [; S- ~ O2 s
buff/cache:可以理解为缓存;% d8 a5 }, ] v; ^+ Z4 s
% R' U' t0 T! Y0 U& m9 Q; B- C5 }
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
- f5 g/ h0 d$ |" n. B6 y3 g @* v& @' d1 {4 B
2.清理缓存命令:
; l8 p7 \+ C c4 k; U" M) i* k |- M2 f
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
" B% v/ W. C2 p" k( P* q3 }0 R) x/ a. T! M ?/ C( H& Z$ p
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
2 Q: y0 {# w1 X- C. g
+ q' j8 a5 Z- p5 }: n/ |echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存% P! F5 W h, _. ~
: N7 {9 a3 [- R( h! ^0 p f$ U
注释:% _3 F8 \) h- W& ?
3 E" v# S( A/ ]: S& R- d7 @echo 0 是不释放缓存
& h. ?) p) v$ P9 i ~1 x& [2 D! n) Y. g/ w, ]' Z! V6 J6 z
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)6 o( [$ G; `6 {. X, X: L- C @
6 S% ?3 ^1 t/ K! x1 L
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)9 \+ O, M3 X+ X; M, V6 h% O
3 Y/ U- S$ L! i3 {echo 3 是释放 1 和 2 中说到的所有缓存
' p( Y0 p+ U+ n' b" D. a# V0 h9 R' u: b
4 w$ \6 ~. [9 t3 Q2 U
6 S+ e# d \* E! L% O
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|