|
linux系统该如何查看内存使用情况以及清理缓存?
( I1 h& ?" x! ?- g" r! v+ l+ N* ?# V
linux系统该如何查看内存使用情况以及清理缓存?
3 J# g4 [, j( o+ U; H! [) o; u6 ?- `# ]7 Q1 z# E
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
: T" D( x0 a2 y- C0 M9 ?0 i y2 _+ w ~2 i# ?1 j t, }
1.查看物理内存使用情况的命令:free -h
z( o4 y- L0 k6 j& `- a
! H" a4 H, ~. F* Qtotel:机器总的物理内存;" P7 P: C& J- _- F
8 h* r: o. i- ?4 tused:已使用的内存;
- J. s5 O+ U, e! {/ x2 s5 p! ` v0 ]8 Y- R1 J
free:空闲的物理内存;
% x& I S( P. r- G6 {0 y9 q5 i5 i+ |! y+ q' H B
shared:被共享使用的物理内存;
n$ K0 P$ i/ L7 {# x- s( V7 u ^
buff/cache:可以理解为缓存;; r! b* D, I1 a- J8 U) a
! ^! h; h$ Z% V! o" D- E9 y
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。8 ~; v% Q @9 y4 `- r, R
( Q8 Z; r. ^! r, L! |3 ?
2.清理缓存命令:
9 H, I/ [3 L3 t8 X# c1 t& v. M6 j( i2 w1 r
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
: E! ]1 [5 h& @! s4 ~. g3 p" r# R
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存: L Z3 A8 E# N1 H- y) |2 K
5 N4 X: c6 V1 E, W/ ^
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存/ w! V" C7 a$ _9 U9 U4 Z
3 V: T F1 F v, {注释:% ]3 q7 \, U, k( T4 _( B. G' ^
9 s7 U/ f2 Q; }% {7 v& L7 f6 L
echo 0 是不释放缓存" ]" t6 m p0 B7 }( @# l( n( W
. h' b9 b+ y$ n7 U, E8 }echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)$ l, g8 H6 i2 O; r3 H
* T3 C) U& a5 c+ L% V- m# D
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存): E: h. J. b: ~+ o
9 Y' V5 s1 N' m- p
echo 3 是释放 1 和 2 中说到的所有缓存- D2 W, K# e* [1 D$ y
+ q! q2 o* m' T
/ Q; X2 i; n8 l8 _* ]9 n. [* h- n, o$ p9 Q6 T7 ^1 M
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|